Commit Graph

15 Commits

Author SHA1 Message Date
GT610
3532844879 fix(ssh): Fixed the logic for handling font paths (#1093)
* fix(ssh): Fixed the logic for handling font paths

Correctly handles font filenames to avoid duplicate file extensions. Also optimized the logic for copying font files to ensure path accuracy.

Add an issue participant

* fix (Settings): Fixed the font clearing feature and added cache cleanup

On the SSH settings page, we fixed an issue where the font clearing feature failed to clear the cache and added logic to clear cached font files. Additionally, we changed the clearing operation to run asynchronously to ensure the page closes only after the operation is complete.

* fix: Check if the component has been mounted before popping the context

Avoid calling `context.pop()` when the component is unmounted, which causes an exception
2026-03-28 11:23:39 +08:00
GT610
fa4ac00ced chore: Update dependencies (#1088)
* chore: Update submodules and dependencies

Update the fl_lib and circle_chart submodules to the latest commit

Upgrade the hive_ce_generator dependency from 1.9.2 to 1.11.0

* build: Updated dependency versions

Updated fl_chart to 1.2.0, json_serializable to 6.13.0, and test to 1.29.0

Replaced flutter_secure_storage_macos with flutter_secure_storage_darwin

Removed the animations and screenshot dependencies, which are no longer in use

* chore: Update French i18n
2026-03-25 11:49:50 +08:00
GT610
c4d528733d chore: Update dependencies and remove unused plugins (#1086)
- Update Riverpod-related dependencies to the latest versions
- Remove the app_links and gtk plugins
- Update the reference path for hive_ce
- Adjust the provider implementation in the generated code
2026-03-23 23:17:35 +08:00
GT610
d6e17ff58c feat: Added Port Forwarding Functionality (#1083)
* feat: Added Port Forwarding Functionality

Implemented port forwarding functionality, including the following major changes:
- Added a port forwarding configuration model and related state management
- Added a port forwarding page and interaction logic
- Implemented forwarding connections between local and remote ports
- Integrated into the server features menu
- Added necessary Hive adapters and storage support
- Updated plugin configurations across all platforms to support the new feature

* feat (Port Forwarding): Added multilingual support and optimized implementation

Added multilingual support for the port forwarding feature, including Chinese, English, and other languages

Optimized the port forwarding implementation by adding connection management and error handling

Fixed an issue with state persistence when updating port forwarding configurations

Updated related dependencies and submodules

* fix(port_forward): Fixed port forwarding error handling and redesigned the configuration dialog

Handled uncaught errors when port forwarding is disabled or during connection attempts

Extracted the configuration dialog into a standalone component and added port range validation

* fix(port_forward): Fixed issues with port forwarding connection management and UI layout

Fixed an issue where port forwarding connections were not closed properly; now uses `clientGetter` to delay the retrieval of `SSHClient`
Added cleanup logic when connections are closed to prevent memory leaks

Added a `mounted` check in `PortForwardPage` to prevent operations from executing after the component is unmounted

Wrapped the configuration dialog content in a `SingleChildScrollView` to prevent content overflow

* fix(port_forward): Fixed a concurrent modification exception that occurred when closing a port forwarding connection

Fixed a concurrent modification exception that could occur when closing a local forwarding entry by copying the connection list to prevent modifications to the collection during iteration. Also improved the UI by using theme colors and added error handling for configuration saving.

* fix(port_forward_provider): Fixed an issue where entries were not properly removed when port forwarding was stopped

When port forwarding is stopped, ensure that the corresponding entries are removed from the _forwards map. Additionally, before adding a new forwarding rule, check for and close any existing forwarding rules with the same ID to prevent resource leaks.

* refactor(l1n): Remove unused localization and remote host port translations

* fix(port_forward_provider): Handle errors when closing port forwarding

Add error handling to prevent the program from crashing due to exceptions when closing port forwarding

* refactor(port_forward): Refactor port forwarding state management to use serverId

Directly link port forwarding state management to the server ID to simplify parameter passing

Remove direct dependencies on Spi and use serverId as the core identifier instead

Update relevant providers and page logic to accommodate the new state structure

* fix(port_forward): Fixed a race condition issue in port forwarding operations

Added an _inFlight collection to prevent duplicate operations

Added a _saving state when saving configurations to prevent duplicate submissions

Automatically cleans up forwarding when changes in server connection status are detected

* refactor(port_forward_provider): Remove unnecessary concurrency control logic

Simplify the `toggleForward` method by removing concurrency control for the `_inFlight` collection, as it is not required in the current scenario
2026-03-23 19:38:58 +08:00
lollipopkit🏳️‍⚧️
0a42e27ce3 chore: rm app_links 2026-03-23 01:05:26 +08:00
GT610
f858b150a5 feat (Editor): Add an option to set the editor font family (#1078)
* feat (Editor): Add an option to set the editor font family

Add the `editorFontFamily` property to the settings storage and implement font family selection functionality on editor-related pages. Also, update all pages that use the editor settings to support the newly added font family option.

* refactor(editor): Optimize the logic for editor font settings
Standardize the method for retrieving font settings on the editor page to avoid redundant calls to the `fetch()` method. Extract the font retrieval logic into variables or anonymous functions to improve code readability and performance.
2026-03-20 14:00:44 +08:00
GT610
e8265bc74a refactor: Remove Cupertino routing options and update the list of contributors (#1076)
- Remove code related to Cupertino routing that is no longer in use
- Update the list of contributors on GitHub
- Update the version of the xterm submodule
2026-03-19 15:56:37 +08:00
GT610
f280113864 chore: Remove unused submodule (#1074) 2026-03-18 16:46:45 +08:00
GT610
713662d5b6 fix(ssh): Ensure that the private key ends with a newline character (#1073)
* fix(ssh): Ensure that the private key ends with a newline character

Fixes an issue where SSH private key files were not written with a newline character at the end, preventing parsing errors in certain SSH clients

Update the package

* fix(server_func_btns): Fixed an issue with the order of SSH command parameters and added file permission settings

Added permission settings for private key files on non-Windows platforms to ensure secure access. Additionally, the order of SSH command parameters was adjusted to ensure that connection parameters are passed correctly.
2026-03-18 16:37:12 +08:00
GT610
ac4607371a refactor (dep): Introduce more submodules and update fl_lib submodule (#1060)
* refactor (dep): Introduce more submodules and update fl_lib submodule

* chore: Add default branch configuration for submodules
2026-02-28 20:21:55 +08:00
lollipopkit🏳️‍⚧️
c3678f3df9 chore(i18n): migrate start stop keys to fl_lib (#1057) 2026-02-27 23:36:59 +08:00
GT610
8b1326ff64 refactor(ssh): Update Terminal page to adapt new copy and paste logic (#1054)
* refactor(ssh): Remove terminal copy button and streamline clipboard functionality

Update dependency versions and remove the copy button from the terminal page, integrating clipboard functionality into the terminal controller.

* refactor(ssh): Optimize clipboard paste functionality implementation

Convert the _OnTerminalPaste method to an asynchronous implementation and remove duplicate _paste methods.

* refactor(ssh): Rename clipboard operation function and add new functionality

Renamed _onTerminalPaste to _onClipboardAction and expanded its functionality

Now supports copying selected text to the clipboard and performing paste operations when no text is selected

* fix: Fixed an issue where clipboard operations did not wait for asynchronous completion.

* fix(ssh): Fixed terminal paste operation return logic

Prevented redundant _onTerminalPaste calls after terminal paste operations
2026-02-27 21:56:16 +08:00
GT610
79e53c419e chore: Update dependencies and submodules (#1052)
- Update the fl_lib submodule to the latest commit
- Remove dependency comments using submodules from pubspec.yaml
- Upgrade local_auth and related platform implementations to new versions
2026-02-14 13:00:20 +08:00
GT610
6d10054791 chore: Update package version (#1051) 2026-02-13 20:42:52 +08:00
lollipopkit🏳️‍⚧️
a2922f9b0f opt.: include core repos via submodules (#1046)
* opt.: include core repos via submodules

* fix: checkout submodules in analysis workflow

* fix: scope analysis to app sources

* refactor: move direct-included repos under packages
2026-02-07 00:58:56 +08:00