What's Changed
Changed
- Migrated Settings dialog from deprecated
PreferencesWindowtoPreferencesDialog(libadwaita 1.5+) - Updated libadwaita feature from
v1_4tov1_5for PreferencesDialog support - Updated workspace dependencies:
uuid1.6 → 1.11regex1.10 → 1.11proptest1.4 → 1.6tempfile3.24 → 3.15zip2.1 → 2.2
- Removed unnecessary
macos_kqueuefeature fromnotifycrate - Note:
ksni0.3.3 andsspi/picky-krbkept at current versions due tozvariant/rand_coreversion conflicts - Migrated all dialogs to use
adw::ToolbarViewfor proper libadwaita layout: - Migrated Template dialog to modern libadwaita patterns:
- Basic tab:
adw::PreferencesGroupwithadw::ActionRowfor template info and default values - SSH options:
adw::PreferencesGroupwith Authentication, Connection, and Session groups - RDP options: Display, Features, and Advanced groups with dynamic visibility (resolution/color hidden in Embedded mode)
- VNC options: Display, Encoding, Features, and Advanced groups
- SPICE options: Security, Features, and Performance groups with dynamic visibility (TLS-related fields)
- Zero Trust options: Provider selection with
adw::ActionRow, provider-specific groups for all 10 providers
- Basic tab:
Fixed
- Fixed missing icon for "Embedded SSH terminals" feature on Welcome page (
display-symbolic→utilities-terminal-symbolic) - Fixed missing Quick Connect header bar icon (
network-transmit-symbolic→go-jump-symbolic) - Fixed missing Split Horizontal header bar icon (
view-paged-symbolic→object-flip-horizontal-symbolic) - Fixed missing Interface tab icon in Settings (
preferences-desktop-appearance-symbolic→applications-graphics-symbolic) - Fixed KeePass Settings: Browse buttons for Database File and Key File now open file chooser dialogs
- Fixed KeePass Settings: Dynamic visibility for Authentication fields (password/key file rows show/hide based on switches)
- Fixed KeePass Settings: Added "Check" button to verify database connection
- Fixed KeePass Settings:
verify_kdbx_credentialsnow correctly handles key-file-only authentication with--no-passwordflag - Fixed SSH Agent Settings: "Start Agent" button now properly starts ssh-agent and updates UI
- Fixed Zero Trust (AWS SSM) connection status icon showing as failed despite successful connection
Improved
- Migrated About dialog from
gtk4::AboutDialogtoadw::AboutDialogfor modern GNOME look - Migrated Password Generator dialog switches from
ActionRow+Switchtoadw::SwitchRowfor cleaner code - Migrated Cluster dialog broadcast switch from
ActionRow+Switchtoadw::SwitchRow - Migrated Export dialog switches from
ActionRow+Switchtoadw::SwitchRow - Enhanced About dialog with custom links and credits:
- Added short description under logo
- Added Releases, Details, and License links
- Added "Made with ❤️ in Ukraine 🇺🇦" to Acknowledgments
- Added legal sections for key dependencies (GTK4, IronRDP, VTE)
- Migrated group dialogs from
ActionRow+Entrytoadw::EntryRow:- New Group dialog
- Edit Group dialog
- Rename dialog (connections and groups)
- Migrated Settings UI tab from
SpinButtontoadw::SpinRowfor session max age - Added
alert.rshelper module for modernadw::AlertDialogAPI - Migrated all
gtk4::AlertDialogusages toadw::AlertDialogvia helper module (50+ usages across 12 files) - Updated documentation (INSTALL.md, USER_GUIDE.md) for version 0.5.9
- Connection dialog (
dialogs/connection.rs) - SSH Agent passphrase dialog (
dialogs/settings/ssh_agent_tab.rs)
- Connection dialog (
- Enabled libadwaita
v1_4feature foradw::ToolbarViewsupport - Replaced hardcoded CSS colors with Adwaita semantic colors:
- Status indicators now use
@success_color,@warning_color,@error_color - Toast notifications use semantic colors for success/warning states
- Form validation styles use semantic colors
- Status indicators now use
- Reduced global clippy suppressions in
main.rsfrom 30+ to 5 essential ones - Replaced
unwrap()calls in Cairo drawing code with proper error handling (if let Ok(...))
Fixed
- Cairo text rendering in embedded RDP/VNC widgets no longer panics on font errors
Installation
Debian/Ubuntu
sudo dpkg -i rustconn_0.5.9_amd64.deb
sudo apt-get install -f # Install dependencies if neededAppImage
chmod +x RustConn-0.5.9-x86_64.AppImage
./RustConn-0.5.9-x86_64.AppImageopenSUSE (OBS)
Packages available at: https://build.opensuse.org/package/show/home:totoshko88:rustconn/rustconn
# Tumbleweed
sudo zypper ar https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/openSUSE_Tumbleweed/ rustconn
sudo zypper ref
sudo zypper in rustconn
# Leap 16.0
sudo zypper ar https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/16.0/ rustconn
sudo zypper ref
sudo zypper in rustconn