Commit Graph

151 Commits

Author SHA1 Message Date
wonfen
5858f05c13 perf: async app startup loading to prevent UI freeze 2025-06-13 22:59:16 +08:00
Tunglies
07738dd82d feat: implement lightweight mode state management and initialization #3344, d05952e945 2025-06-11 04:20:50 +08:00
Tunglies
5cf3e1a817 refactor: streamline macOS-specific code by consolidating conditional imports and logic in sysopt, tray, lightweight, and mihomo modules 2025-06-11 00:19:06 +08:00
Tunglies
fee6a586d7 feat: implement CmdProxyState for managing proxy refresh state and add state management module
refactor: remove unnecessary macOS conditional compilation directive
2025-06-05 19:34:24 +08:00
Tunglies
c507c483fb refactor: update tauri-plugin-autostart source to use git repository and set macos launchagent name 2025-05-26 22:26:52 +08:00
Tunglies
b1c31f7a6f Revert "fix: ensure app state is saved on exit and window events for better state management"
This reverts commit 9af0803e9b.

chore: update UPDATELOG
2025-05-22 11:19:38 +08:00
Tunglies
d49618786e chore: temporarily deprecate tauri-plugin-window-state integration
- Remove or disable usage of tauri-plugin-window-state due to compatibility or stability concerns.
- Will revisit and re-enable after further evaluation or upstream fixes.
2025-05-22 10:22:16 +08:00
Tunglies
866ec2720d Revert "feat: integrate window state management for improved window restoration and logging"
This reverts commit c9a9e934f4.
2025-05-22 10:17:42 +08:00
Tunglies
9af0803e9b fix: ensure app state is saved on exit and window events for better state management 2025-05-22 09:54:25 +08:00
Tunglies
c9a9e934f4 feat: integrate window state management for improved window restoration and logging 2025-05-22 03:02:02 +08:00
wonfen
ddd85d4d87 perf & fix: optimize window state initialization & add missing permissions 2025-05-16 09:50:53 +08:00
Tunglies
1ddbe7c2cc feat: add service uninstall functionality and improve service operation flow 2025-05-13 01:56:19 +08:00
Tunglies
5b6c9be99f feat: better service status and TUN mode usable checks in Setting Page 2025-05-12 19:04:21 +08:00
wonfen
10576780ed feat: add hosts settings to DNS settings and enhance DNS config validation 2025-05-11 22:55:31 +08:00
wonfen
050b363066 fix: resolve Windows build error 2025-05-10 01:45:39 +08:00
wonfen
8cae9d4e0a refactor: use async approach to restructure UI startup logic and resolve various freeze issues during launch 2025-05-10 01:26:03 +08:00
wonfen
32b6821b8a feat: add network manager to optimize network request handling 2025-04-30 21:30:28 +08:00
tiegen
7383459b9a feat: clean proxy settings before exit (#3404) 2025-04-26 18:09:53 +08:00
wonfen
55cde38562 feat: improve core functionality to prevent main process blocking, enhance MihomoManager, and optimize window creation process 2025-04-25 18:24:16 +08:00
wonfen
d6a79316a6 feat: toggle next auto-update time on subscription card click and show update result feedback 2025-04-25 17:17:34 +08:00
wonfen
d05952e945 fix: resolve lightweight mode recovery failure caused by white screen prevention 2025-04-21 00:15:02 +08:00
Tunglies
07b424cb09 fix: cargo clippy errors 2025-04-21 00:06:37 +08:00
Tunglies
1a9a2ff9e0 fix: unexpected global hotkey regestion for windows 'Ctrl+Q' #3389 2025-04-20 23:49:06 +08:00
逐雁南飛
b70cad537c 添加代理主机的设置,允许代理设置为其他IP(非127.0.0.1) (#2963)
允许下拉选择ip地址(支持IPv6)、localhost、以及当前系统的主机名,同时兼容手工输入
2025-04-17 16:47:21 +08:00
wonfen
85d08fadd9 feat: check window render size and wait for completion to prevent white screen 2025-04-17 16:47:21 +08:00
wonfen
fad73a281a feat: manage windows with tauri window-state to address various window issues 2025-04-17 16:47:21 +08:00
Tunglies
51ef1329be Refactor async runtime usage with AsyncHandler wrapper 2025-04-11 18:00:35 +08:00
Tunglies
b6a6f5f434 Add AsyncHandler for wrapping task spawning 2025-04-11 17:30:30 +08:00
Tunglies
644fdc071f rm: unused tauri-plugin-window-state 2025-04-10 15:52:37 +08:00
wonfen
52a15bb281 feat: detect admin mode and warn about auto-start unavailability 2025-03-31 03:22:24 +08:00
Tunglies
e8e16f7d57 refactor(logging): replace log_err! with structured logging_error! calls
refactor(cm-service): better error handling from Backend to Frontend
2025-03-28 03:39:34 +08:00
Tunglies
42d0ea7e36 chore: remove unused dependencies and notification plugin from the project 2025-03-27 02:59:48 +08:00
Tunglies
81968a579d feat: reorganize service commands and implement logging for service management 2025-03-26 15:02:08 +08:00
wonfen
cf78bb3686 refactor: service reinstallation logic on detection failure 2025-03-25 00:51:38 +08:00
Tunglies
d6dd89b674 fix: remove macOS application menu setup due to CMD+C/V/A issues 2025-03-20 18:14:18 +08:00
Tunglies
56e6139c2b fix: ensure main window title is set correctly on macOS 2025-03-20 15:43:59 +08:00
Tunglies
84a5cf6b89 feat(hotkey): macos support CMD+W to close window as default 2025-03-20 13:02:26 +08:00
Tunglies
81b5501b0e feat: implement auto lightweight mode timer functionality
This commit implements the automatic lightweight mode feature with timer functionality:

- Rename configuration properties from auto_enter_lite_mode to enable_auto_light_weight_mode and auto_enter_lite_mode_delay to auto_light_weight_minutes for better clarity
- Add window event listeners to detect when window is closed or gets focus
- Implement timer system to automatically enter lightweight mode after configured time
- Remove exit_lightweight_mode function as it's no longer needed with the new implementation
- Update UI components to reflect the new property names
- Add logging for lightweight mode operations
- Initialize lightweight mode based on user configuration at startup

The feature now allows users to set a timer that will automatically enter lightweight mode
after closing the main window, which can be cancelled by focusing the window again.
2025-03-20 06:01:38 +08:00
Tunglies
91ccb3045c feat: implement lightweight mode functionality and update related settings 2025-03-20 03:23:14 +08:00
wonfen
e31f176c25 feat: lite mode settings 2025-03-20 01:44:43 +08:00
Tunglies
baa535b609 feat: add macOS application menu integration 2025-03-18 18:40:53 +08:00
wonfen
6239f81f36 feat: sync auto-start status 2025-03-17 09:48:44 +08:00
wonfen
bcaafa67a3 feat: unlock test page 2025-03-16 12:15:35 +08:00
wonfen
1f99cee78b feat: home page 2025-03-14 13:31:34 +08:00
Tunglies
b57c6e408a chore: git hooks for linter and formatter 2025-03-13 12:51:20 +08:00
wonfen
e27a32395a refactor: restructure DNS setting logic 2025-03-08 11:25:00 +08:00
Tunglies
4ed36f6223 refacture: Mihomo API integration (#2900)
* feat: add mihomo_api crate as a workspace member

Added a new mihomo_api crate to handle interactions with the Mihomo API. This modular approach provides a dedicated interface for fetching and managing proxy data from Mihomo servers. The implementation includes functionality to refresh and retrieve both proxies and provider proxies with proper error handling and timeouts. Added this crate as a workspace member and included it as a dependency in the main project.

* Refactors Mihomo API integration

Simplifies proxy fetching by removing the MihomoManager structure.

Updates the get_proxies and get_providers_proxies functions to directly use the mihomo_api module.

Removes unused Mihomo API related files and modules for cleaner codebase.

Enhances overall maintainability and performance.
2025-03-05 00:45:08 +08:00
Tunglies
1ba688727e feat(proxy): add proxy commands and integrate with API
Add new proxy.rs module with get_proxies and get_providers_proxies commands.
Update mod.rs and lib.rs to re-export and register proxy commands.
Update API.ts to use invoke for proxy commands.
Minor formatting improvements in module/mihomo.rs.
2025-03-04 01:01:24 +08:00
wonfen
07bdc108ed feat: show service mode installation prompts in user mode 2025-03-03 14:42:31 +08:00
Tunglies
aff504bddc feat: add export diagnostic info functionality (#2856) 2025-03-03 05:58:12 +08:00