🚀 Release 1.0.2
Fixed
- Profile Switching: Separate Active vs Default profile
- Introduced a non-persisted runtime
ActiveProfiledistinct from the persisteddefault_profilein config. - Switching profiles in the UI now updates only the active profile; the default indicator and config file are not overwritten.
- UI header shows the active profile, while the profiles menu star correctly marks the persisted default.
- Validation prefers the active profile when set, falling back to the default profile.
- Introduced a non-persisted runtime
- VNC Profile Switching: Fixed VNC sessions not updating when switching connection profiles
- VNC service now properly closes all existing sessions when switching profiles
- Ensures new VNC connections use the updated client connection
- Prevents VNC sessions from trying to connect to old servers after profile changes
- Maintains session management integrity across profile switches
- VNC Browser Opening on Linux: Fixed VNC connection issues when xdg-open is not available
- Added detection for missing xdg-open command before attempting to open browser
- Shows helpful error dialog with shortened VNC URL when browser cannot be opened automatically
- Implements URL forwarding system: shortened URLs (e.g.,
http://localhost:45167/vnc-forward) automatically redirect to full VNC sessions - Uses scrollable text area for long VNC URLs to prevent UI overflow and improve readability
- Improved dialog positioning and width to properly display long URLs without truncation
- Enhanced button focus and keyboard handling (Enter/Escape) for proper dialog dismissal
- Clarifies that the VNC server is still running and ready for connection
- Prevents confusing situation where VNC server starts but browser doesn't open
- Provides clear instructions for manual connection with the VNC URL
- Especially important for WSL and minimal Linux distributions that don't include xdg-open
- Config Wizard Theme Integration: Fixed config wizard to use the same theme colors as the main application
- Config wizard now applies custom theme configuration before setting tview styles
- Ensures consistent visual appearance between main app and config wizard
- Fixed input field colors to match the default theme (black instead of blue)
- Applied to both standalone config wizard and embedded profile wizard
- Config Wizard Loading Issues: Fixed config wizard to properly load existing configuration files
- Fixed config wizard to load from default locations (
~/.config/proxmox-tui/config.yml) - Added profile resolution and application logic to config wizard flow
- Ensured both
--config-wizardflag andconfig-wizardsubcommand work consistently - Fixed issue where config wizard wouldn't load existing profiles when no config file specified
- Fixed config wizard to load from default locations (
- Profile Wizard Validation: Fixed profile wizard to properly recognize filled authentication fields
- Fixed profile wizard to create profile entries in memory for new profiles
- Ensured form fields and validation logic work with the same data structure
- Fixed validation to properly detect when password or token authentication is provided
- Resolved issue where profile wizard wouldn't recognize filled authentication information
- Profile Deletion Deadlock: Fixed deadlock when deleting connection profiles
- Removed nested
QueueUpdateDrawcalls that caused deadlocks - Fixed profile deletion modal to close properly after operation completion
- Used direct UI updates instead of queued updates to prevent deadlocks
- Ensured proper focus restoration after profile deletion operations
- Removed nested
- Shell Connection Deadlock: Fixed deadlock when opening shell to VM without IP address
- Added
showMessageSafefunction that doesn't useQueueUpdateDrawto avoid deadlocks - Updated shell functions to use
CreateErrorDialogfor errors andshowMessageSafefor info messages - Fixed issue where screen would flash without showing error message to user
- Provide clear error message explaining why connection failed and how to fix it
- Follow same pattern as VNC functions to ensure consistency and prevent deadlocks
- Added
- noVNC Extra Keys Display: Fixed broken 'extra keys' image display in embedded noVNC client
- Updated noVNC submodule from v1.6.0 to v1.6.0-11-g4cb5aa4 (11 commits ahead)
- Includes upstream fix for extra keys image display bug
- Resolves issue where extra keys button images would not display correctly
- Guest List Search Selection Mismatch: Fixed issue where selected item's details didn't match the selected item when searching/filtering
- Fixed programmatic selection not triggering VM/node changed callbacks
- Ensures details panel always shows correct information for selected item
- Applied to search filtering, selection restoration, and VM operations
- Resolves issue where details panel would show stale information after filtering
- showMessage Deadlock Prevention: Updated showMessage calls to use showMessageSafe to prevent deadlocks
- Fixed showMessage calls in button handlers, event callbacks, and goroutines
- Applied to VM config forms, snapshot operations, script selector, and connection profiles
- Prevents UI deadlocks when showing error messages from async operations
- Ensures consistent user experience without blocking the interface