- Added `WorkspaceId` and `WorkspaceRestoreManifest` for managing workspace states.
- Introduced `DesktopController` to handle window lifecycle and activation requests.
- Updated `AppShell` to support multiple workspaces and improved window state persistence.
- Enhanced localization files to include new window management options.
- Refactored activation handling to support reusing existing windows based on user commands.
- Introduced `rewrap_master_key_token_for` method in `CredentialCrypto` for rewrapping master keys between different configurations.
- Updated `generate_master_key_token` to use the configured master password.
- Enhanced settings presentation to include local backup status and readiness.
- Refactored cloud sync settings encryption into a dedicated function for better organization.
- Improved tests to validate the new functionality and ensure correct handling of master passwords and settings.
- Introduced `embed-resource` dependency to manage Windows application icons.
- Updated `build.rs` to compile Windows resources and include an application icon.
- Enhanced shell command execution to prevent console window from appearing during startup.
- Added validation for Windows application binaries to ensure GUI subsystem and required icon resources are present.
- Updated tests to verify the presence of necessary resources in the Windows executable.
- Added `AppFlavor` enum to distinguish between stable and preview application identities.
- Updated various components to utilize the current application flavor for configuration, logging, and UI elements.
- Enhanced the update mechanism to ensure compatibility with the respective application flavor.
- Implemented tests to validate flavor-specific behavior and configuration isolation.
- Modified native menus and title bars to reflect the correct application name based on the current flavor.
- Added `semver` dependency to manage versioning.
- Introduced `UpdateManifest` struct for parsing and validating update manifests.
- Implemented logic to select update artifacts based on platform and architecture.
- Updated the update check process to utilize the new manifest structure.
- Enhanced error handling for update signature verification and manifest parsing.
- Modified update status messages for clarity in the UI.
- Added tests for new functionality and error cases in the update process.
- Added `.flex_none()` to various transfer-related UI components to ensure consistent layout behavior.
- Updated the `compact_transfer_upload_menu_button`, `compact_transfer_toolbar_button`, and related functions for improved styling.
- Simplified the logic for determining cloud sync status by consolidating status checks and removing redundant conditions.
- Removed deprecated snapshot password prompt methods from the settings panel and related components.
- Updated cloud sync settings to ensure compatibility with new embedded configuration structure.
- Added tests to validate the new cloud sync settings behavior and ensure proper migration from legacy configurations.
- Added a new `TransferBrowserViewMode` enum to toggle between list and tree views in the file explorer.
- Integrated view mode selection into the application settings, with default set to list mode.
- Updated transfer browser functionality to handle key events and operations based on the selected view mode.
- Enhanced UI components to support dynamic rendering based on the current view mode, including context menus and toolbar actions.
- Introduced tests to validate view mode behavior and compatibility with existing file operations.
Wire known-host management, lock-guarded public-key copying, notes export, SSH config import, reusable accounts and connection tags into GPUI. Add the cached virtualized SFTP tree, cache-only hover details, serial upload protocol selection, X/YMODEM progress and cancellation, session-local search wrapping and optional bold default foreground.
Keep focused state ownership, blocking work off GPUI updates, stale-completion guards and nyaterm-ui wrappers. Update all six locale catalogs and add state/lifecycle coverage. Depends on the preceding domain and transport foundation commit.
Validation on Windows: cargo check --workspace; cargo test --workspace; cargo clippy --workspace --all-targets -- -D warnings; cargo fmt --all -- --check. Real-window, SFTP-server and serial-device acceptance remain pending.
Normalize requested and default Claude Code models independently. Require non-interactive terminal commands in base, Codex and Claude Code prompts, with focused regression tests.
- Enhanced English, French, Japanese, Korean, Simplified Chinese, and Traditional Chinese localization files with new strings for support information, version, operating system, architecture, runtime, and installation status.
- Updated the about dialog in the UI to display additional information, improving user experience and accessibility.
- Refactored the about dialog rendering logic to accommodate new localization strings and ensure proper layout.
- Introduced a new `TransferSpeed` struct to manage and calculate transfer speed based on recent byte transfers.
- Updated transfer job state to include speed tracking, ensuring accurate speed reporting during transfers.
- Enhanced transfer job rendering to display current speed in the UI, replacing percentage indicators for running transfers.
- Added tests to validate speed calculations and ensure correct behavior during transfer state changes, including pausing and resuming.
- Refactored transfer progress handling to integrate speed updates seamlessly.
- Introduced a new `QueueHost` struct for rendering the transfer queue within the transfer panel.
- Added tests to ensure long transfer text shrinks appropriately without displacing status during panel resizing.
- Updated `transfer_queue_view` and `transfer_job_row` functions to improve layout handling, including full width and minimum width constraints.
- Implemented truncation and tooltip functionality for long file names in the job row to enhance user experience.
- Added focus management for the connection search overlay, allowing for better user experience when searching connections.
- Implemented methods to expand and collapse the search overlay based on user input and search state.
- Updated connection state management to track whether the search overlay is expanded or collapsed.
- Enhanced tests to verify the behavior of the search overlay, ensuring it only collapses after the search query is cleared.
- Adjusted UI components to reflect the expanded state of the search overlay in various contexts.
- Introduced a new mechanism for handling stale keyword highlights in terminal snapshots.
- Updated `TerminalKeywordHighlightSnapshot` to include source rows and scrollback length for better context.
- Enhanced `TerminalKeywordHighlightLookup` to differentiate between current, reused, and stale ranges.
- Improved the logic for determining when keyword highlights should be retained or discarded based on terminal state changes.
- Added tests to verify the behavior of stale keyword prefixes during continuous shell echo and their impact on rendering.
- Added new localization strings for VNC password limitations and warnings across multiple languages.
- Introduced dynamic tab title descriptions and hints for connection editor functionality.
- Updated connection editor state management to include credential overlay and baud rate popover handling.
- Enhanced serial port loading state tracking and error management in connection catalog.
- Improved connection editor UI components for better user experience and accessibility.
- Introduced a new constant for the maximum retained row byte limit in terminal surfaces.
- Updated the logic for retaining snapshot rows to respect both row count and byte limits.
- Added a function to estimate the byte size of terminal snapshot rows for better memory management.
- Enhanced tests to verify that the retained row cache respects the estimated byte budget.
- Removed unused window parameter from `start_restorable_open_tab` method for clarity.
- Renamed `start_saved_connection_with_options` to `continue_saved_connection_start` to better reflect its purpose.
- Enhanced focus management in tests to ensure proper restoration of input focus after actions.
- Updated credential and keyboard interactive prompt methods to accept a window parameter for improved focus management.
- Introduced a new enum `SessionStartFocusTarget` to determine focus targets based on connection types.
- Refactored session start methods to focus the appropriate surface after starting a session.
- Added tests to verify focus behavior for user-started sessions.
- Introduced `PreparedSshShellIntegration` to streamline shell integration handling.
- Updated `SshShellIntegrationState` to manage pending integrations instead of scripts.
- Refactored related functions to utilize the new structure for improved clarity and maintainability.
- Added support for additional shell types in integration scripts.
- Adjusted tests to accommodate changes in shell integration logic.
Request client-side decorations for the Linux main window to avoid duplicate titlebars. Handle native move and double-click maximize requests while keeping menu clicks and nested drag regions separate.
Preserve native file selection and open directory targets explicitly. Resolve paths off the UI thread and fall back to the containing directory for missing or unreadable Linux targets.
- Changed text size from small to extra small for improved readability.
- Replaced fixed height with minimum width to enhance overflow handling in the tunnel editor UI.
- Updated overflow handling in the network list to use vertical scrollbar.
- Replaced overflow_hidden with truncate for better text display in proxy and tunnel rows.
- Ensured minimum width constraints are applied to prevent layout issues.
Keep raw path identities separate from display paths and local download names. Classify user cancellations as cancelled in the desktop UI and warn in the transport layer.