Commit Graph

26 Commits

Author SHA1 Message Date
lollipopkit🏳️‍⚧️
3a615449e3 feat: Windows compatibility (#836)
* feat: win compatibility

* fix

* fix: uptime parse

* opt.: linux uptime accuracy

* fix: windows temperature fetching

* opt.

* opt.: powershell exec

* refactor: address PR review feedback and improve code quality

### Major Improvements:
- **Refactored Windows status parsing**: Broke down large `_getWindowsStatus` method into 13 smaller, focused helper methods for better maintainability and readability
- **Extracted system detection logic**: Created dedicated `SystemDetector` helper class to separate OS detection concerns from ServerProvider
- **Improved concurrency handling**: Implemented proper synchronization for server updates using Future-based locks to prevent race conditions

### Bug Fixes:
- **Fixed CPU percentage parsing**: Removed incorrect '*100' multiplication in BSD CPU parsing (values were already percentages)
- **Enhanced memory parsing**: Added validation and error handling to BSD memory fallback parsing with proper logging
- **Improved uptime parsing**: Added support for multiple Windows date formats and robust error handling with validation
- **Fixed division by zero**: Added safety checks in Swap.usedPercent getter

### Code Quality Enhancements:
- **Added comprehensive documentation**: Documented Windows CPU counter limitations and approach
- **Strengthened error handling**: Added detailed logging and validation throughout parsing methods
- **Improved robustness**: Enhanced BSD CPU parsing with percentage validation and warnings
- **Better separation of concerns**: Each parsing method now has single responsibility

### Files Changed:
- `lib/data/helper/system_detector.dart` (new): System detection helper
- `lib/data/model/server/cpu.dart`: Fixed percentage parsing and added validation
- `lib/data/model/server/memory.dart`: Enhanced fallback parsing and division-by-zero protection
- `lib/data/model/server/server_status_update_req.dart`: Refactored into 13 focused parsing methods
- `lib/data/provider/server.dart`: Improved synchronization and extracted system detection

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor: parse & shell fn struct

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-08 16:56:36 +08:00
lollipopkit🏳️‍⚧️
c6439673b8 feat: shift key in ssh term (#819) 2025-07-17 18:18:18 +08:00
lollipopkit🏳️‍⚧️
0c1ada0067 fix: cloud sync (#769) 2025-06-04 00:11:31 +08:00
dsvf
b882baeafa Added Function keys (F1-F12) to SSH virtual keyboard options (#641) 2024-11-24 13:19:20 +08:00
lollipopkit🏳️‍⚧️
89ec2d94d6 opt.: virt keys loading 2024-10-05 10:18:00 +08:00
lollipopkit🏳️‍⚧️
3b6fb6194b opt.: more virtual keys (#596) 2024-09-28 14:40:22 +08:00
lollipopkit
336b11b808 chore: change dart pkg id 2024-06-11 22:06:29 +08:00
lollipopkit
73f2926469 feat: turn off countly 2024-04-23 00:58:04 +08:00
lollipopkit
d312b783e9 opt.: ssh 2024-04-23 00:36:44 +08:00
lollipopkit
fae3a20a9e new: VersionRelated 2024-03-20 14:26:22 +08:00
lollipopkit
e928a29353 opt.: no app restart required 2023-09-21 20:08:54 +08:00
lollipopkit
7f4dcc1357 opt.
- add help for ssh virt keys
- rm unused lib
2023-07-29 16:24:47 +08:00
lollipopkit
0022294ea4 #71 new & opt.
- ssh page virt key long press
- custom ssh virt keys
2023-06-27 00:41:56 +08:00
lollipopkit
06be4503ca #24 #25 #33 new: sftp file edit 2023-05-28 18:21:03 +08:00
lollipopkit
68c1fe4943 #24 #25 #33 new: editor 2023-05-28 15:03:02 +08:00
lollipopkit
ae822de737 opt.
- `TerminalColors`
- ssh virtual key auto switch
2023-05-27 20:43:40 +08:00
lollipopkit
00fdcb1ee8 Server detail page cards support sorting 2023-05-26 18:03:43 +08:00
lollipopkit
20ef9d4575 opt. 2023-05-26 17:01:52 +08:00
lollipopkit
fd2d59b1e0 fix: backup restore failed 2023-04-16 11:59:00 +08:00
lollipopkit
065fd15429 decrease res files 2023-03-11 19:02:22 +08:00
lollipopkit
e7b1773e5c opt: settings page 2023-02-06 15:32:36 +08:00
lollipopkit
7837fa4339 fix: ssh use SafeArea 2023-02-02 18:47:07 +08:00
lollipopkit
82a201d3dc new: support pick ssh term theme 2023-02-02 16:52:30 +08:00
lollipopkit
1063916474 ssh: support copy/paste, fix ios backspace 2023-02-01 21:34:16 +08:00
lollipopkit
19e0b283ae ssh page opt: performance & auto exit 2023-01-29 22:03:25 +08:00
LollipopKit
f3c670d82c opt. proj struct 2023-01-29 16:56:40 +08:00