keepassxc icon indicating copy to clipboard operation
keepassxc copied to clipboard

Add customizable toolbar settings and fix German language layout issue

Open luked10 opened this issue 2 months ago • 1 comments

Implements:

  • Issue #12544: Add user-configurable visibility toggles for toolbar actions
  • Issue #12550: Fix German translation causing password generator button overflow

Includes:

  • New Config::ConfigKey entries for each toolbar button visibility option
  • New UI elements (QGroupBox + five QCheckBox widgets) and bindings in ApplicationSettingsWidgetGeneral.ui
  • Updated loadSettings() and saveSettings() logic to sync UI checkboxes with persistent config values
  • Toolbar visibility logic applied in MainWindow and NewDatabaseWizard, ensuring consistent behavior across all entry points
  • Added minimum width (900px) to the New Database Wizard to prevent German-language truncation
  • Replaced unsafe static_cast with dynamic_cast in KeeShare for RSA key extraction; added fallback warning
  • GUI tests updating TestGui.cpp and TestGui.h for:
  • Settings navigation
  • Checkbox state propagation
  • Config rewrites
  • Presence of "de" in language selector
  • Cleanup of include ordering and removal of unused includes Fixes #12544. Fixes #12550.

Screenshots

image image

image image unknown

Testing strategy

Added automated GUI tests for:

  • Navigating settings
  • Verifying checkbox bindings
  • confirming German locale presence in the language selector
  • Manually tested toolbar visibility toggles with all five buttons
  • Verified correct rendering in both English and German interface modes
  • Ensured all existing tests pass locally (Qt Test + CTest)

Type of change

  • ✅ Bug fix (non-breaking change that fixes an issue)
  • ✅ New feature (change that adds functionality)
  • ✅ Refactor (significant modification to existing code)

luked10 avatar Dec 10 '25 23:12 luked10

Very nice thank you for the submission, will review

droidmonkey avatar Dec 11 '25 13:12 droidmonkey