Skip to content

Prepare ShellCanvas 0.1.15: saved login, file operations and UI polish - #35

Merged
techartdev merged 12 commits into
mainfrom
codex/saved-connection-credentials
Sep 27, 2026
Merged

techartdev merged 12 commits into
mainfrom
codex/saved-connection-credentials

Conversation

@techartdev

@techartdev techartdev commented Sep 26, 2026 •

Copy link
Copy Markdown
Owner

This is the consolidated ShellCanvas 0.1.15 release candidate. It combines the UI work from #33, FTP installation from #34, saved credentials, and the subsequent fixes tested locally.

Saved SSH hosts now use a single Save and connect flow: entered passwords or key passphrases are stored in the OS credential store and reused automatically. Users can replace or forget a saved secret, and Advanced contains legacy compatibility and a one-time connection action. Public profile files continue to omit secrets.

Files now forwards overwrite reviews and decisions through app-scoped services, so clipboard uploads/copies can resolve existing destinations. Open terminal here starts in the current or selected directory only when Files and Terminal share the same supported SSH source. Text selection is visible across fields, editor and terminal. The merged UI polish adds file menu icons, host capability cards, compact connection spacing and a direct new-host button.

App Manager offers the hash-pinned FTP adapter and saved adapter workspace credentials. The FTP adapter currently supports browsing, text preview and downloads, without upload or file-management support. Versions and the changelog are prepared for 0.1.15; the changelog also includes overwrite/deletion support already merged in #32.

The GNOME Wayland title bar now uses scoped compatibility styling with a flat light/dark header and round native window buttons. It preserves GTK's widgets and input behavior, tracks GTK theme settings, and opts out for X11, other desktops, custom/high-contrast themes and an explicit GTK_THEME override. This addresses the remaining GTK 3 versus GNOME libadwaita decoration difference in #27; it is not a GTK 4 migration. Investigation and validation details are in docs/linux-window-decorations.md.

Validation:

  • 428 frontend tests passed; TypeScript and the production frontend build passed.

  • 8 SDK packaging/schema tests and 5 updater/verification-runner tests passed.

  • Release version consistency, public repository checks and Rust formatting passed.

  • Full Rust workspace tests passed: 289 passed, 5 ignored. Local verification used CARGO_PROFILE_DEV_DEBUG=0, CARGO_PROFILE_TEST_DEBUG=0 and CARGO_INCREMENTAL=0 to limit build artifacts.

  • All-target Clippy passed with warnings denied. Small lint cleanups preserve the existing command/copy interfaces and runtime behavior.

  • Standalone app SDK tarball verification passed, including fresh consumer projects, lifecycle and custom-service fixtures.

  • Both Rust SDK 0.1.15 archives package successfully. Standalone adapter SDK verification also passed: independent exported-source build, generated custom/files/console/settings packages, schema validation and production host interoperability.

  • The user confirmed clipboard transfer and the simplified SSH form in the preceding local Windows test builds. The final merged layout and Linux/macOS behavior still require manual verification.

  • Native Wayland decoration validation passed: 2 tests cover scope, real GTK header styling, dark/high-contrast changes, native button layouts and close-guard delivery. Captured before/light/dark headers inspected. The Linux and macOS app-frame checks also passed.

Release status:

@techartdev techartdev changed the title Remember saved connection credentials in OS store Prepare ShellCanvas 0.1.15: saved login, file operations and UI polish Sep 27, 2026
@techartdev
techartdev changed the base branch from codex/ftp-adapter-install to main September 27, 2026 20:55
@techartdev
techartdev marked this pull request as ready for review September 27, 2026 22:16
@techartdev
techartdev merged commit a041dd3 into main Sep 27, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant