- Add _isInitialized flag to OptionsWindow to prevent multiple ThemeChanged subscriptions
- Ensures ThemeChanged event is only subscribed once
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
- Add _isInitialized flag to prevent multiple event subscriptions
- Skip re-initialization in FrmOptions_Load when form is reused
- Properly clean up Application.Idle handler in FormClosing
- Add test to verify form can be shown/hidden multiple times
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
- Call RevertSettings() on all option pages when Cancel is clicked
- Enhanced ThemePage.RevertSettings() to properly revert theme changes:
- Store original active theme in LoadSettings
- Clear modifiedThemes list on cancel
- Restore original theme selection
- Add VisibleChanged handler to ensure panel is populated when form is shown
- Fixes issue where Options panel was empty after canceling theme selection
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
Found another location where ConfirmCloseConnection is changed without immediately saving.
This ensures all four code paths that change this setting persist it immediately.
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
- Add VisibleChanged event handler to ConnectionsPage to reload settings when page becomes visible
- Save settings immediately when user checks "Don't show this message again" checkbox during connection close
- Ensures Options dialog always displays current setting value, even if changed outside the dialog
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
When user checks "Do not show this dialog again" while closing a connection,
the ConfirmCloseConnection setting should be set to Never (1) instead of being
decremented. The decrement approach was incorrectly changing All (4) to Multiple (3)
instead of Never (1), which didn't match user expectations.
Fixed in:
- ConnectionTab.cs
- ConnectionWindow.cs (2 occurrences)
- ConnectionContextMenu.cs
- frmMain.cs
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>
- Changed SetProcessProperties to use Arguments property instead of splitting by space and using ArgumentList
- Added tests to verify passwords with special characters like '=' are passed correctly
- This fixes the issue where passwords like 'Z-3=Wv99/Aq' were being split incorrectly
Co-authored-by: Kvarkas <3611964+Kvarkas@users.noreply.github.com>