Sline
afee21dae4
refactor: unify Mihomo WS subscription with shared hook ( #5719 )
...
* refactor: unify Mihomo WS subscription with shared hook
* refactor: relocate clash log hook and streamline services
* docs: Changelog.md
2025-12-04 14:58:03 +08:00
Slinetrac
3cf51de850
refactor: reorganize component and hook structure; remove unused modules
2025-12-04 12:51:22 +08:00
Slinetrac
4f8ed63cf0
refactor(use-clash): centralize patch typing and port validation logic
2025-12-04 09:30:24 +08:00
Slinetrac
56ad05cbf9
refactor(main): extract keyboard shortcuts to utils
2025-12-03 13:15:21 +08:00
Slinetrac
1727d0b6d4
refactor(preload): unify preload logic into preload.ts
2025-12-03 12:51:46 +08:00
Slinetrac
edf6e7cc42
chore: improve i18n
2025-12-02 18:55:59 +08:00
Slinetrac
32a5044026
fix(updater): compute real download progress and stabilize progress bar states
2025-12-02 11:06:10 +08:00
Sline
008234988c
fix: ensure early CSS injection by preloading Verge config ( #5690 )
...
* fix(theme): background css injection
* fix: ensure early CSS injection by preloading Verge config
2025-12-01 21:45:01 +08:00
Slinetrac
882f1a2a4a
Revert "feat: imporve the layout of proxies page ( #5647 )"
...
This reverts commit 8c1caf8555beaba8b3b9e514f7d8fc60a6368219.
2025-11-29 20:40:45 +08:00
Slinetrac
45d4f0e89c
chore: remove meta-json-schema #5656 #5478
2025-11-29 15:10:41 +08:00
DengHanjie
8c1caf8555
feat: imporve the layout of proxies page ( #5647 )
...
* feat: imporve the layout of proxies page to avoid navigator overlapping items (issue #5556 )
* feat(proxy): remove left padding
2025-11-29 11:08:58 +08:00
Sline
683667f8ae
fix(ui): prevent light flash on dark startup ( #5637 )
...
* fix(ui): prevent light flash on dark startup
* fix(window): apply initial dark/light theme to prevent white flash
* refactor(boot): optimize config fetch and theme fallback
* fix: system theme detection
* fix(window): remove black flash before loader by aligning initial paint with theme
2025-11-28 15:15:17 +08:00
Slinetrac
99dda5496e
fix(i18n): prevent zh flash and normalize language caching #5632
2025-11-28 10:38:42 +08:00
oomeow
9ce5d27d6e
Revert "chore: frontend format check"
...
This reverts commit 90b850154d1081bcd5c5b4f815b23a82a65d0fea.
2025-11-27 21:50:25 +08:00
oomeow
90b850154d
chore: frontend format check
2025-11-27 21:08:04 +08:00
renovate[bot]
3cd6e88c37
chore(deps): update dependency prettier to ^3.7.0 ( #5625 )
...
* chore(deps): update dependency prettier to ^3.7.0
* style: prettier
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com>
2025-11-27 17:25:34 +08:00
Slinetrac
a572708fd8
fix(search): prevent crash on invalid regex input in search box
...
Closes #5609
2025-11-26 18:40:22 +08:00
Slinetrac
cbd8c89097
fix(connection-table): set boxSizing to border-box for header and cells
...
Closes #5611
2025-11-26 17:49:17 +08:00
Slinetrac
affdfc045e
fix(backup-config-viewer): add top margin to WebDAV address field to prevent floating label from overlapping dialog title
...
Closes #5608
2025-11-26 17:13:05 +08:00
Tunglies
adb969d370
fix(ip-info-card): update IP detection to refresh only when necessary
2025-11-26 14:41:12 +08:00
Tunglies
ecc272aa20
feat: integrate tauri-plugin-clipboard-manager and add system info commands ( #5593 )
2025-11-25 16:58:25 +08:00
Sline
b83ef994f8
refactor(traffic-monitor): Move traffic sampling/compression to a dedicated Web Worker ( #5588 )
...
* refactor(traffic-monitor): Move traffic sampling/compression to a dedicated Web Worker
* refactor(traffic-monitor): introduce shared sampler, safe fallback, and decoupled range handling
* refactor(traffic-monitor): add optional subscribe flag and fix range handling
* fix(traffic-monitor): age out idle samples and prevent ref-count updates after unmount
2025-11-25 11:43:45 +08:00
Sline
caca8b2bc4
refactor: debugLog for frontend ( #5587 )
2025-11-25 10:01:04 +08:00
Sline
8e8182f707
refactor(app-data): split monolithic context into focused SWR hooks ( #5576 )
...
* refactor(app-data): split monolithic context into focused SWR hooks
* refactor(swr): unify polling and consolidate proxy/config/provider data flow
2025-11-24 16:18:31 +08:00
Tunglies
44adf55975
fix(proxy): sync system proxy switch state with background highlight #5240 , #5439 , #5421 , #4651 , #4536
...
Fixed race condition where button state and background color would desync
during rapid toggles or slow backend responses.
Root causes:
- Button used actualState while background used configState
- toggleSystemProxy returned immediately via setTimeout(0), releasing lock
before backend operation completed
- 100ms delay in updateProxyStatus caused visual flash
Changes:
- Unified state source: both button and background now use actualState
- Made toggleSystemProxy truly async with proper await chain
- Wrapped toggle function with useLockFn to serialize operations
- Reduced state refresh delay from 100ms to 50ms
- Fixed GuardState lock release timing for async operations
- Added proper error rollback with state refresh on failure
Resolves issue where proxy toggle button would show as off while
background remained green, or vice versa.
2025-11-23 12:17:52 +08:00
Tunglies
ddd24eb3ac
fix: prevent drag listeners from blocking navigation clicks in sidebar #5567
...
Separated dnd-kit drag handlers (attributes/listeners) from ListItemButton
to ListItemIcon only. Previously, long-press or rapid clicks on nav items
would trigger drag detection and cancel the click event, causing the item
to visually highlight but fail to navigate.
Changes:
- Moved sortable attributes/listeners to icon elements only
- ListItemButton now handles pure navigation clicks without interference
- Drag handle cursor ('grab') remains on icons when sortable is enabled
Fixes issue where sidebar tabs would "go dark" without actual route change.
2025-11-23 11:47:27 +08:00
Slinetrac
687530a9cd
fix(sysproxy): remove redundant 172.29.0.0/16 entry #4351
...
Closes #4351
2025-11-22 19:05:57 +08:00
Sline
4ff186497c
feat(tun): auto-redirect GUI support for linux ( #5565 )
...
* feat(tun): auto-redirect GUI support for linux
* refactor(tun-viewer): unify Linux-only auto-redirect row layout
2025-11-22 18:58:57 +08:00
Slinetrac
45020fceda
refactor(proxies): reorder chain-mode toggle for immediate UI feedback
2025-11-22 17:06:35 +08:00
renovate[bot]
51760a5b95
chore(deps): update npm dependencies ( #5561 )
...
* chore(deps): update npm dependencies
* fix: types
* chore: replace vite-plugin-monaco-editor-esm with utils/monaco
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com>
2025-11-22 16:33:34 +08:00
Slinetrac
d110e462aa
Revert "chore(deps): update npm dependencies ( #5558 )"
...
This reverts commit ddcd4a8192eda762327d8c8fd3cf4e77b81a82af.
2025-11-22 13:49:17 +08:00
renovate[bot]
ddcd4a8192
chore(deps): update npm dependencies ( #5558 )
...
* chore(deps): update npm dependencies
* fix: correct monaco typescript reference in editor viewer
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com>
2025-11-22 08:39:08 +08:00
Slinetrac
c38dd5da14
fix(unlock): normalize and dedupe unlock items
2025-11-21 20:22:57 +08:00
Tunglies
803f749063
Revert "chore(deps): update npm dependencies ( #5554 )"
...
This reverts commit da0106b1e8c7620a5cc4b3d534dc7dfc96f0f35f.
2025-11-21 18:13:22 +08:00
renovate[bot]
da0106b1e8
chore(deps): update npm dependencies ( #5554 )
...
* chore(deps): update npm dependencies
* fix: types
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Slinetrac <realakayuki@gmail.com>
2025-11-21 12:36:17 +08:00
Slinetrac
fcc1d4f9b5
chore: remove vitest
2025-11-20 21:42:11 +08:00
Sline
bf06cbc87d
refactor: replace @mui/x-data-grid with @tanstack/react-table ( #5544 )
2025-11-20 17:41:34 +08:00
Slinetrac
be97a27ba3
fix: Monaco syntax highlighting broken by CSS injection #5440
2025-11-20 15:16:25 +08:00
Slinetrac
2bb9f648ba
fix(app-data-provider): dashboard state sync
2025-11-20 13:23:50 +08:00
Slinetrac
6ab597db8f
fix: prevent filename from overlapping with action icons in backup records #5525
...
Closes #5525
2025-11-19 17:29:11 +08:00
Sline
f439e93a2b
feat(hotkey): add global reactivate_profiles shortcut ( #5527 )
...
* feat(hotkey): add global reactivate_profiles shortcut
* feat(profile): expose validation state for reactivation shortcuts
2025-11-19 17:06:23 +08:00
Slinetrac
94b07b51d6
chore: rename Youtube to YouTube
...
Closes #5526
2025-11-19 17:04:19 +08:00
Slinetrac
ec7f912eae
fix(home-profile-card): use profiles label for home shortcut
2025-11-18 18:50:53 +08:00
Slinetrac
e7812396df
feat(logs): support reverse chronological order #5513
...
Closes #5513
2025-11-18 17:39:56 +08:00
Slinetrac
a5de24a545
fix(webdav): prevent dialog refresh loop and stabilize busy-state handling
2025-11-17 18:16:13 +08:00
Slinetrac
635f63e9e5
feat: explicit paste button
2025-11-17 10:07:38 +08:00
Slinetrac
f315a98afd
fix: monaco editor line count limit
2025-11-17 07:41:37 +08:00
Slinetrac
cfd4532440
fix(home/traffic): ensure traffic chart stretches on Windows maximize
2025-11-16 15:42:14 +08:00
Slinetrac
272c2f3467
Revert "fix(editor): restore syntax highlighting for JS/CSS in Monaco editor"
...
This reverts commit 55ac25b1a69f51c48def07caccdacc45211d2fbf.
vite-plugin-monaco-editor-esm has handled it
2025-11-15 16:46:11 +08:00
Slinetrac
55ac25b1a6
fix(editor): restore syntax highlighting for JS/CSS in Monaco editor
2025-11-15 15:51:03 +08:00