diff options
author | Janek Bevendorff <janek@jbev.net> | 2020-05-26 18:58:52 +0300 |
---|---|---|
committer | Janek Bevendorff <janek@jbev.net> | 2020-05-30 11:45:00 +0300 |
commit | 9d2e066acae0cd7bd3447bf3c5fa8ff0c0c4f073 (patch) | |
tree | 24256fa3c1413723e07985eee70cfce898bb1ae9 /src | |
parent | 5c69875b59d0e1cd27c6631506f1e06323f4068f (diff) |
Clean up various parts of the UI and rearrange settings
- Unify widget layouts and margins
- Fix tab order on a bunch of widgets
- Fix broken entry/group edit form layout and replace with grid layout
- Rearrange some settings for better logical grouping
- Fix some settings checkboxes not being enabled/disabled on load
- Fix "General" settings tab scrolling
- Rename "Root" group to "Passwords"
- Update demo.kdbx accordingly and redownload favicons
- Change entry path display to use slash separators
- Reduce Medium and Large icon sizes slightly
Diffstat (limited to 'src')
32 files changed, 1823 insertions, 1306 deletions
diff --git a/src/core/Database.cpp b/src/core/Database.cpp index e567b9dfa..30e5a565b 100644 --- a/src/core/Database.cpp +++ b/src/core/Database.cpp @@ -49,7 +49,7 @@ Database::Database() { setRootGroup(new Group()); rootGroup()->setUuid(QUuid::createUuid()); - rootGroup()->setName(tr("Root", "Root group name")); + rootGroup()->setName(tr("Passwords", "Root group name")); m_modifiedTimer.setSingleShot(true); s_uuidMap.insert(m_uuid, this); diff --git a/src/core/Global.h b/src/core/Global.h index 9cb890299..73aea2e14 100644 --- a/src/core/Global.h +++ b/src/core/Global.h @@ -49,8 +49,8 @@ static const auto FALSE_STR = QStringLiteral("false"); enum IconSize { Default = 24, - Medium = 32, - Large = 40 + Medium = 30, + Large = 36 }; template <typename T> struct AddConst diff --git a/src/gui/AboutDialog.ui b/src/gui/AboutDialog.ui index 8bd8ea01f..348c79cf7 100644 --- a/src/gui/AboutDialog.ui +++ b/src/gui/AboutDialog.ui @@ -231,7 +231,7 @@ <x>0</x> <y>0</y> <width>466</width> - <height>246</height> + <height>242</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout_5"> @@ -336,6 +336,12 @@ </item> </layout> </widget> + <tabstops> + <tabstop>tabWidget</tabstop> + <tabstop>scrollArea</tabstop> + <tabstop>debugInfo</tabstop> + <tabstop>copyToClipboard</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/ApplicationSettingsWidget.cpp b/src/gui/ApplicationSettingsWidget.cpp index 72905c0b2..896fd8898 100644 --- a/src/gui/ApplicationSettingsWidget.cpp +++ b/src/gui/ApplicationSettingsWidget.cpp @@ -190,6 +190,7 @@ void ApplicationSettingsWidget::loadSettings() m_generalUi->minimizeAfterUnlockCheckBox->setChecked(config()->get(Config::MinimizeAfterUnlock).toBool()); m_generalUi->minimizeOnOpenUrlCheckBox->setChecked(config()->get(Config::MinimizeOnOpenUrl).toBool()); m_generalUi->hideWindowOnCopyCheckBox->setChecked(config()->get(Config::HideWindowOnCopy).toBool()); + hideWindowOnCopyCheckBoxToggled(m_generalUi->hideWindowOnCopyCheckBox->isChecked()); m_generalUi->minimizeOnCopyRadioButton->setChecked(config()->get(Config::MinimizeOnCopy).toBool()); m_generalUi->dropToBackgroundOnCopyRadioButton->setChecked(config()->get(Config::DropToBackgroundOnCopy).toBool()); m_generalUi->useGroupIconOnEntryCreationCheckBox->setChecked( @@ -199,10 +200,6 @@ void ApplicationSettingsWidget::loadSettings() m_generalUi->trackNonDataChangesCheckBox->setChecked(config()->get(Config::TrackNonDataChanges).toBool()); m_generalUi->faviconTimeoutSpinBox->setValue(config()->get(Config::FaviconDownloadTimeout).toInt()); - if (!m_generalUi->hideWindowOnCopyCheckBox->isChecked()) { - hideWindowOnCopyCheckBoxToggled(false); - } - m_generalUi->languageComboBox->clear(); QList<QPair<QString, QString>> languages = Translator::availableLanguages(); for (const auto& language : languages) { @@ -215,6 +212,7 @@ void ApplicationSettingsWidget::loadSettings() m_generalUi->previewHideCheckBox->setChecked(config()->get(Config::GUI_HidePreviewPanel).toBool()); m_generalUi->toolbarHideCheckBox->setChecked(config()->get(Config::GUI_HideToolbar).toBool()); + toolbarSettingsToggled(m_generalUi->toolbarHideCheckBox->isChecked()); m_generalUi->toolbarMovableCheckBox->setChecked(config()->get(Config::GUI_MovableToolbar).toBool()); m_generalUi->monospaceNotesCheckBox->setChecked(config()->get(Config::GUI_MonospaceNotes).toBool()); @@ -239,13 +237,16 @@ void ApplicationSettingsWidget::loadSettings() } m_generalUi->systrayShowCheckBox->setChecked(config()->get(Config::GUI_ShowTrayIcon).toBool()); + systrayToggled(m_generalUi->systrayShowCheckBox->isChecked()); m_generalUi->systrayDarkIconCheckBox->setChecked(config()->get(Config::GUI_DarkTrayIcon).toBool()); m_generalUi->systrayMinimizeToTrayCheckBox->setChecked(config()->get(Config::GUI_MinimizeToTray).toBool()); m_generalUi->minimizeOnCloseCheckBox->setChecked(config()->get(Config::GUI_MinimizeOnClose).toBool()); m_generalUi->systrayMinimizeOnStartup->setChecked(config()->get(Config::GUI_MinimizeOnStartup).toBool()); m_generalUi->checkForUpdatesOnStartupCheckBox->setChecked(config()->get(Config::GUI_CheckForUpdates).toBool()); + checkUpdatesToggled(m_generalUi->checkForUpdatesOnStartupCheckBox->isChecked()); m_generalUi->checkForUpdatesIncludeBetasCheckBox->setChecked( config()->get(Config::GUI_CheckForUpdatesIncludeBetas).toBool()); + m_generalUi->autoTypeAskCheckBox->setChecked(config()->get(Config::Security_AutoTypeAsk).toBool()); if (autoType()->isAvailable()) { diff --git a/src/gui/ApplicationSettingsWidgetGeneral.ui b/src/gui/ApplicationSettingsWidgetGeneral.ui index 86415959c..12a5cc57d 100644 --- a/src/gui/ApplicationSettingsWidgetGeneral.ui +++ b/src/gui/ApplicationSettingsWidgetGeneral.ui @@ -6,11 +6,11 @@ <rect> <x>0</x> <y>0</y> - <width>559</width> - <height>1280</height> + <width>605</width> + <height>1279</height> </rect> </property> - <layout class="QVBoxLayout" name="verticalLayout_3"> + <layout class="QVBoxLayout" name="verticalLayout_3" stretch="0"> <property name="leftMargin"> <number>0</number> </property> @@ -32,786 +32,784 @@ <attribute name="title"> <string>Basic Settings</string> </attribute> - <layout class="QVBoxLayout" name="verticalLayout"> + <layout class="QVBoxLayout" name="verticalLayout" stretch="0"> <item> - <widget class="QGroupBox" name="startupGroup"> - <property name="title"> - <string>Startup</string> + <widget class="QScrollArea" name="scrollArea"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> </property> - <layout class="QVBoxLayout" name="verticalLayout_4"> - <item> - <widget class="QCheckBox" name="singleInstanceCheckBox"> - <property name="text"> - <string>Start only a single instance of KeePassXC</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="launchAtStartup"> - <property name="text"> - <string>Automatically launch KeePassXC at system startup</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="systrayMinimizeOnStartup"> - <property name="text"> - <string>Minimize window at application startup</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="minimizeAfterUnlockCheckBox"> - <property name="text"> - <string>Minimize window after unlocking database</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="rememberLastDatabasesCheckBox"> - <property name="text"> - <string>Remember previously used databases</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="rememberDbSubLayout_2"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <spacer name="toolbarMovableSpacer_3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="openPreviousDatabasesOnStartupCheckBox"> - <property name="text"> - <string>Load previously open databases on startup</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - <item> - <layout class="QHBoxLayout" name="rememberDbSubLayout"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <spacer name="toolbarMovableSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="rememberLastKeyFilesCheckBox"> - <property name="text"> - <string>Remember database key files and security dongles</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - <item> - <widget class="QCheckBox" name="checkForUpdatesOnStartupCheckBox"> - <property name="text"> - <string>Check for updates at application startup once per week</string> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="checkUpdatesSubLayout"> - <property name="spacing"> - <number>0</number> - </property> - <item> - <spacer name="checkUpdatesSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="checkForUpdatesIncludeBetasCheckBox"> - <property name="text"> - <string>Include beta releases when checking for updates</string> - </property> - </widget> - </item> - </layout> - </item> - </layout> - </widget> - </item> - <item> - <widget class="QGroupBox" name="saveGroup"> - <property name="title"> - <string>File Management</string> + <property name="frameShape"> + <enum>QFrame::NoFrame</enum> </property> - <layout class="QVBoxLayout" name="verticalLayout_5"> - <item> - <widget class="QCheckBox" name="useAtomicSavesCheckBox"> - <property name="text"> - <string>Safely save database files (may be incompatible with Dropbox, etc)</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="backupBeforeSaveCheckBox"> - <property name="text"> - <string>Backup database file before saving</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="autoSaveAfterEveryChangeCheckBox"> - <property name="text"> - <string>Automatically save after every change</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="autoSaveOnExitCheckBox"> - <property name="text"> - <string>Automatically save on exit</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="trackNonDataChangesCheckBox"> - <property name="text"> - <string>Mark database as modified for non-data changes (e.g., expanding groups)</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="autoReloadOnChangeCheckBox"> - <property name="text"> - <string>Automatically reload the database when modified externally</string> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item> - <widget class="QGroupBox" name="entryGroup"> - <property name="title"> - <string>Entry Management</string> + <property name="frameShadow"> + <enum>QFrame::Plain</enum> </property> - <layout class="QVBoxLayout" name="verticalLayout_6"> - <item> - <widget class="QCheckBox" name="useGroupIconOnEntryCreationCheckBox"> - <property name="text"> - <string>Use group icon on entry creation</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="previewHideCheckBox"> - <property name="text"> - <string>Hide the entry preview panel</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="minimizeOnOpenUrlCheckBox"> - <property name="text"> - <string>Minimize when opening a URL</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="hideWindowOnCopyCheckBox"> - <property name="text"> - <string>Hide window when copying to clipboard</string> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="hideWindowLayout_1"> - <property name="spacing"> - <number>0</number> - </property> - <item> - <spacer name="hideWindowSpacer_1"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QRadioButton" name="minimizeOnCopyRadioButton"> - <property name="text"> - <string>Minimize</string> - </property> - </widget> - </item> - </layout> - </item> - <item> - <layout class="QHBoxLayout" name="hideWindowLayout_2"> - <property name="spacing"> - <number>0</number> - </property> - <item> - <spacer name="hideWindowSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QRadioButton" name="dropToBackgroundOnCopyRadioButton"> - <property name="text"> - <string>Drop to background</string> - </property> - </widget> - </item> - </layout> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,0"> - <item> - <widget class="QLabel" name="faviconTimeoutLabel"> - <property name="text"> - <string>Favicon download timeout:</string> - </property> - </widget> - </item> - <item> - <widget class="QSpinBox" name="faviconTimeoutSpinBox"> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="focusPolicy"> - <enum>Qt::StrongFocus</enum> - </property> - <property name="accessibleName"> - <string>Website icon download timeout in seconds</string> - </property> - <property name="suffix"> - <string comment="Seconds"> sec</string> - </property> - <property name="minimum"> - <number>1</number> - </property> - <property name="maximum"> - <number>60</number> - </property> - <property name="value"> - <number>10</number> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - </layout> - </widget> - </item> - <item> - <widget class="QGroupBox" name="generalGroup"> - <property name="title"> - <string>General</string> + <property name="horizontalScrollBarPolicy"> + <enum>Qt::ScrollBarAlwaysOff</enum> </property> - <layout class="QVBoxLayout" name="verticalLayout_7"> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_3" stretch="0,0,0,1"> - <item> - <widget class="QLabel" name="appThemeLabel"> - <property name="text"> - <string>Application Theme:</string> - </property> - </widget> - </item> - <item> - <widget class="QComboBox" name="appThemeSelection"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="focusPolicy"> - <enum>Qt::StrongFocus</enum> - </property> - <property name="accessibleName"> - <string>Application Theme Selection</string> - </property> - </widget> - </item> - <item> - <widget class="QLabel" name="label"> - <property name="text"> - <string>(restart program to activate)</string> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_5"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item> - <widget class="QCheckBox" name="toolbarHideCheckBox"> - <property name="text"> - <string>Hide toolbar (icons)</string> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="toolbarMovableLayout"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <spacer name="toolbarMovableSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="toolbarMovableCheckBox"> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>Movable toolbar</string> - </property> - </widget> - </item> - </layout> - </item> - <item> - <layout class="QHBoxLayout" name="toolButtonStyleLayout" stretch="0,0,0,1"> - <property name="spacing"> - <number>0</number> - </property> - <item> - <spacer name="toolButtonStyleSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item alignment="Qt::AlignRight"> - <widget class="QLabel" name="toolButtonStyleLabel"> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="sizePolicy"> - <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="styleSheet"> - <string notr="true">margin-right: 5px</string> - </property> - <property name="text"> - <string>Button style:</string> - </property> - </widget> - </item> - <item> - <widget class="QComboBox" name="toolButtonStyleComboBox"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="focusPolicy"> - <enum>Qt::StrongFocus</enum> - </property> - <property name="accessibleName"> - <string>Toolbar button style</string> - </property> - <property name="sizeAdjustPolicy"> - <enum>QComboBox::AdjustToContents</enum> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item> - <widget class="QCheckBox" name="monospaceNotesCheckBox"> - <property name="text"> - <string>Use monospaced font for Notes</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="minimizeOnCloseCheckBox"> - <property name="text"> - <string>Minimize instead of app exit</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="systrayShowCheckBox"> - <property name="text"> - <string>Show a system tray icon</string> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_4"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <spacer name="horizontalSpacer_4"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="systrayDarkIconCheckBox"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="text"> - <string>Dark system tray icon</string> - </property> - </widget> - </item> - </layout> - </item> - <item> - <widget class="QWidget" name="systraySettings" native="true"> - <layout class="QVBoxLayout" name="systrayLayout"> - <property name="leftMargin"> - <number>0</number> + <property name="widgetResizable"> + <bool>true</bool> + </property> + <widget class="QWidget" name="scrollAreaWidgetContents"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>581</width> + <height>1235</height> + </rect> + </property> + <layout class="QVBoxLayout" name="verticalLayout_8"> + <property name="spacing"> + <number>0</number> + </property> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + <item> + <widget class="QGroupBox" name="startupGroup"> + <property name="title"> + <string>Startup</string> </property> - <property name="topMargin"> - <number>0</number> + <layout class="QVBoxLayout" name="verticalLayout_4"> + <item> + <widget class="QCheckBox" name="singleInstanceCheckBox"> + <property name="text"> + <string>Start only a single instance of KeePassXC</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="launchAtStartup"> + <property name="text"> + <string>Automatically launch KeePassXC at system startup</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="systrayMinimizeOnStartup"> + <property name="text"> + <string>Minimize window at application startup</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="minimizeAfterUnlockCheckBox"> + <property name="text"> + <string>Minimize window after unlocking database</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="rememberLastDatabasesCheckBox"> + <property name="text"> + <string>Remember previously used databases</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="rememberDbSubLayout_2"> + <property name="spacing"> + <number>0</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMaximumSize</enum> + </property> + <item> + <spacer name="toolbarMovableSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="openPreviousDatabasesOnStartupCheckBox"> + <property name="text"> + <string>Load previously open databases on startup</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="rememberDbSubLayout"> + <property name="spacing"> + <number>0</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMaximumSize</enum> + </property> + <item> + <spacer name="toolbarMovableSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="rememberLastKeyFilesCheckBox"> + <property name="text"> + <string>Remember database key files and security dongles</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QCheckBox" name="checkForUpdatesOnStartupCheckBox"> + <property name="text"> + <string>Check for updates at application startup once per week</string> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="checkUpdatesSubLayout"> + <property name="spacing"> + <number>0</number> + </property> + <item> + <spacer name="checkUpdatesSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="checkForUpdatesIncludeBetasCheckBox"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Include beta releases when checking for updates</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="saveGroup"> + <property name="title"> + <string>File Management</string> </property> - <property name="rightMargin"> - <number>0</number> + <layout class="QVBoxLayout" name="verticalLayout_5"> + <item> + <widget class="QCheckBox" name="autoSaveAfterEveryChangeCheckBox"> + <property name="text"> + <string>Automatically save after every change</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="autoSaveOnExitCheckBox"> + <property name="text"> + <string>Automatically save on exit</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="trackNonDataChangesCheckBox"> + <property name="text"> + <string>Mark database as modified for non-data changes (e.g., expanding groups)</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="backupBeforeSaveCheckBox"> + <property name="text"> + <string>Backup database file before saving</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="autoReloadOnChangeCheckBox"> + <property name="text"> + <string>Automatically reload the database when modified externally</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="useAtomicSavesCheckBox"> + <property name="text"> + <string>Safely save database files (disable if experiencing problems with Dropbox, etc.)</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="entryGroup"> + <property name="title"> + <string>Entry Management</string> </property> - <property name="bottomMargin"> - <number>0</number> + <layout class="QVBoxLayout" name="verticalLayout_6"> + <item> + <widget class="QCheckBox" name="useGroupIconOnEntryCreationCheckBox"> + <property name="text"> + <string>Use group icon on entry creation</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="previewHideCheckBox"> + <property name="text"> + <string>Hide the entry preview panel</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="minimizeOnOpenUrlCheckBox"> + <property name="text"> + <string>Minimize when opening a URL</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="hideWindowOnCopyCheckBox"> + <property name="text"> + <string>Hide window when copying to clipboard</string> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="hideWindowLayout_1"> + <property name="spacing"> + <number>0</number> + </property> + <item> + <spacer name="hideWindowSpacer_1"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QRadioButton" name="minimizeOnCopyRadioButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Minimize</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="hideWindowLayout_2"> + <property name="spacing"> + <number>0</number> + </property> + <item> + <spacer name="hideWindowSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QRadioButton" name="dropToBackgroundOnCopyRadioButton"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Drop to background</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="faviconTimeoutLabel"> + <property name="text"> + <string>Favicon download timeout:</string> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="faviconTimeoutSpinBox"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="focusPolicy"> + <enum>Qt::StrongFocus</enum> + </property> + <property name="accessibleName"> + <string>Website icon download timeout in seconds</string> + </property> + <property name="suffix"> + <string comment="Seconds"> sec</string> + </property> + <property name="minimum"> + <number>1</number> + </property> + <property name="maximum"> + <number>60</number> + </property> + <property name="value"> + <number>10</number> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="generalGroup"> + <property name="title"> + <string>User Interface</string> </property> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <spacer name="horizontalSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>20</height> - </size> + <layout class="QVBoxLayout" name="verticalLayout_7"> + <item> + <layout class="QGridLayout" name="gridLayout_3"> + <property name="horizontalSpacing"> + <number>10</number> + </property> + <item row="0" column="1"> + <widget class="QComboBox" name="appThemeSelection"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="focusPolicy"> + <enum>Qt::StrongFocus</enum> + </property> + <property name="accessibleName"> + <string>Application Theme Selection</string> + </property> + </widget> + </item> + <item row="0" column="3"> + <spacer name="horizontalSpacer_5"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="0" column="2"> + <widget class="QLabel" name="label"> + <property name="text"> + <string>(restart program to activate)</string> + </property> + </widget> + </item> + <item row="1" column="2"> + <widget class="QLabel" name="languageLabel_3"> + <property name="text"> + <string>(restart program to activate)</string> + </property> + </widget> + </item> + <item row="0" column="0"> + <widget class="QLabel" name="appThemeLabel"> + <property name="text"> + <string>Application theme:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QComboBox" name="languageComboBox"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="focusPolicy"> + <enum>Qt::StrongFocus</enum> + </property> + <property name="accessibleName"> + <string>Language selection</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="languageLabel_2"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Language:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="toolButtonStyleLabel"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="styleSheet"> + <string notr="true">margin-right: 5px</string> + </property> + <property name="text"> + <string>Toolbar button style:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QComboBox" name="toolButtonStyleComboBox"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="focusPolicy"> + <enum>Qt::StrongFocus</enum> + </property> + <property name="accessibleName"> + <string>Toolbar button style</string> + </property> + <property name="sizeAdjustPolicy"> + <enum>QComboBox::AdjustToContents</enum> + </property> + </widget> + </item> + </layout> + </item> + <item> + <spacer name="verticalSpacer_5"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="toolbarHideCheckBox"> + <property name="text"> + <string>Hide toolbar</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="toolbarMovableCheckBox"> + <property name="enabled"> + <bool>true</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Movable toolbar</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="monospaceNotesCheckBox"> + <property name="text"> + <string>Use monospaced font for notes</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="minimizeOnCloseCheckBox"> + <property name="text"> + <string>Minimize instead of app exit</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="systrayShowCheckBox"> + <property name="text"> + <string>Show a system tray icon</string> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_4"> + <property name="spacing"> + <number>0</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMaximumSize</enum> + </property> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="systrayDarkIconCheckBox"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Dark system tray icon</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QWidget" name="systraySettings" native="true"> + <layout class="QVBoxLayout" name="systrayLayout"> + <property name="leftMargin"> + <number>0</number> </property> - </spacer> - </item> - <item> - <widget class="QCheckBox" name="systrayMinimizeToTrayCheckBox"> - <property name="enabled"> - <bool>false</bool> + <property name="topMargin"> + <number>0</number> </property> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> + <property name="rightMargin"> + <number>0</number> </property> - <property name="text"> - <string>Hide window to system tray when minimized</string> + <property name="bottomMargin"> + <number>0</number> </property> - </widget> - </item> - </layout> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <property name="spacing"> + <number>0</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMaximumSize</enum> + </property> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>30</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QCheckBox" name="systrayMinimizeToTrayCheckBox"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string>Hide window to system tray when minimized</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <spacer name="verticalSpacer_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> + <layout class="QHBoxLayout" name="resetSettingsSubLayout"> + <property name="spacing"> + <number>0</number> + </property> + <property name="sizeConstraint"> + <enum>QLayout::SetMaximumSize</enum> + </property> + <item> + <widget class="QPushButton" name="resetSettingsButton"> + <property name="text"> + <string>Reset settings to default…</string> + </property> + </widget> + </item> + <item> + <spacer name="spacer4"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Expanding</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>50</width> + <height>20</height> + </size> + </property> + </spacer> </item> </layout> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="languageLabelLayout_2" stretch="0,0,0,1"> - <property name="spacing"> - <number>8</number> - </property> - <item alignment="Qt::AlignRight"> - <widget class="QLabel" name="languageLabel_2"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>Language:</string> - </property> - </widget> - </item> - <item> - <widget class="QComboBox" name="languageComboBox"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="focusPolicy"> - <enum>Qt::StrongFocus</enum> - </property> - <property name="accessibleName"> - <string>Language selection</string> - </property> - </widget> - </item> - <item> - <widget class="QLabel" name="languageLabel_3"> - <property name="text"> - <string>(restart program to activate)</string> - </property> - </widget> - </item> - <item> - <spacer name="spacer3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item> - <spacer name="verticalSpacer"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>15</height> - </size> - </property> - </spacer> - </item> - <item> - <layout class="QHBoxLayout" name="resetSettingsSubLayout"> - <property name="spacing"> - <number>0</number> - </property> - <property name="sizeConstraint"> - <enum>QLayout::SetMaximumSize</enum> - </property> - <item> - <widget class="QPushButton" name="resetSettingsButton"> - <property name="text"> - <string>Reset settings to default…</string> - </property> - </widget> - </item> - <item> - <spacer name="spacer4"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Expanding</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>50</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - </layout> + </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>0</height> + </size> + </property> + </spacer> + </item> + </layout> + </widget> </widget> </item> - <item> - <spacer name="verticalSpacer_2"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Expanding</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> </layout> </widget> <widget class="QWidget" name="tabAutotype"> @@ -819,6 +817,18 @@ <string>Auto-Type</string> </attribute> <layout class="QVBoxLayout" name="verticalLayout_2"> + <property name="leftMargin"> + <number>10</number> + </property> + <property name="topMargin"> + <number>10</number> + </property> + <property name="rightMargin"> + <number>10</number> + </property> + <property name="bottomMargin"> + <number>10</number> + </property> <item> <widget class="QCheckBox" name="autoTypeEntryTitleMatchCheckBox"> <property name="text"> @@ -844,21 +854,43 @@ </widget> </item> <item> - <layout class="QFormLayout" name="formLayout_2"> - <property name="topMargin"> + <spacer name="verticalSpacer_4"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> + <layout class="QGridLayout" name="gridLayout"> + <property name="horizontalSpacing"> <number>10</number> </property> - <item row="1" column="0"> - <widget class="QLabel" name="autoTypeShortcutLabel"> + <property name="verticalSpacing"> + <number>8</number> + </property> + <item row="2" column="0"> + <widget class="QLabel" name="autoTypeDelayLabel"> <property name="text"> - <string>Global Auto-Type shortcut:</string> + <string>Auto-Type typing delay:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="1" column="1"> + <item row="0" column="1"> <widget class="ShortcutWidget" name="autoTypeShortcutWidget"> <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -868,17 +900,10 @@ </property> </widget> </item> - <item row="3" column="0"> - <widget class="QLabel" name="autoTypeDelayLabel"> - <property name="text"> - <string>Auto-Type typing delay:</string> - </property> - </widget> - </item> - <item row="3" column="1"> + <item row="2" column="1"> <widget class="QSpinBox" name="autoTypeDelaySpinBox"> <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -900,17 +925,10 @@ </property> </widget> </item> - <item row="2" column="0"> - <widget class="QLabel" name="autoTypeStartDelayLabel"> - <property name="text"> - <string>Auto-Type start delay:</string> - </property> - </widget> - </item> - <item row="2" column="1"> + <item row="1" column="1"> <widget class="QSpinBox" name="autoTypeStartDelaySpinBox"> <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> @@ -938,6 +956,39 @@ </property> </widget> </item> + <item row="0" column="0"> + <widget class="QLabel" name="autoTypeShortcutLabel"> + <property name="text"> + <string>Global Auto-Type shortcut:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="autoTypeStartDelayLabel"> + <property name="text"> + <string>Auto-Type start delay:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="0" column="2"> + <spacer name="horizontalSpacer_6"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>0</width> + <height>20</height> + </size> + </property> + </spacer> + </item> </layout> </item> <item> @@ -948,7 +999,7 @@ <property name="sizeHint" stdset="0"> <size> <width>20</width> - <height>40</height> + <height>0</height> </size> </property> </spacer> @@ -966,6 +1017,49 @@ <header>autotype/ShortcutWidget.h</header> </customwidget> </customwidgets> + <tabstops> + <tabstop>generalSettingsTabWidget</tabstop> + <tabstop>scrollArea</tabstop> + <tabstop>singleInstanceCheckBox</tabstop> + <tabstop>launchAtStartup</tabstop> + <tabstop>systrayMinimizeOnStartup</tabstop> + <tabstop>minimizeAfterUnlockCheckBox</tabstop> + <tabstop>rememberLastDatabasesCheckBox</tabstop> + <tabstop>openPreviousDatabasesOnStartupCheckBox</tabstop> + <tabstop>rememberLastKeyFilesCheckBox</tabstop> + <tabstop>checkForUpdatesOnStartupCheckBox</tabstop> + <tabstop>checkForUpdatesIncludeBetasCheckBox</tabstop> + <tabstop>autoSaveAfterEveryChangeCheckBox</tabstop> + <tabstop>autoSaveOnExitCheckBox</tabstop> + <tabstop>trackNonDataChangesCheckBox</tabstop> + <tabstop>backupBeforeSaveCheckBox</tabstop> + <tabstop>autoReloadOnChangeCheckBox</tabstop> + <tabstop>useAtomicSavesCheckBox</tabstop> + <tabstop>useGroupIconOnEntryCreationCheckBox</tabstop> + <tabstop>previewHideCheckBox</tabstop> + <tabstop>minimizeOnOpenUrlCheckBox</tabstop> + <tabstop>hideWindowOnCopyCheckBox</tabstop> + <tabstop>minimizeOnCopyRadioButton</tabstop> + <tabstop>dropToBackgroundOnCopyRadioButton</tabstop> + <tabstop>faviconTimeoutSpinBox</tabstop> + <tabstop>appThemeSelection</tabstop> + <tabstop>languageComboBox</tabstop> + <tabstop>toolButtonStyleComboBox</tabstop> + <tabstop>toolbarHideCheckBox</tabstop> + <tabstop>toolbarMovableCheckBox</tabstop> + <tabstop>monospaceNotesCheckBox</tabstop> + <tabstop>minimizeOnCloseCheckBox</tabstop> + <tabstop>systrayShowCheckBox</tabstop> + <tabstop>systrayDarkIconCheckBox</tabstop> + <tabstop>systrayMinimizeToTrayCheckBox</tabstop> + <tabstop>resetSettingsButton</tabstop> + <tabstop>autoTypeEntryTitleMatchCheckBox</tabstop> + <tabstop>autoTypeEntryURLMatchCheckBox</tabstop> + <tabstop>autoTypeAskCheckBox</tabstop> + <tabstop>autoTypeShortcutWidget</tabstop> + <tabstop>autoTypeStartDelaySpinBox</tabstop> + <tabstop>autoTypeDelaySpinBox</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/ApplicationSettingsWidgetSecurity.ui b/src/gui/ApplicationSettingsWidgetSecurity.ui index c39105c06..bd4af19fa 100644 --- a/src/gui/ApplicationSettingsWidgetSecurity.ui +++ b/src/gui/ApplicationSettingsWidgetSecurity.ui @@ -297,6 +297,11 @@ <tabstops> <tabstop>clearClipboardCheckBox</tabstop> <tabstop>clearClipboardSpinBox</tabstop> + <tabstop>lockDatabaseIdleCheckBox</tabstop> + <tabstop>lockDatabaseIdleSpinBox</tabstop> + <tabstop>clearSearchCheckBox</tabstop> + <tabstop>clearSearchSpinBox</tabstop> + <tabstop>touchIDResetCheckBox</tabstop> <tabstop>touchIDResetSpinBox</tabstop> <tabstop>lockDatabaseOnScreenLockCheckBox</tabstop> <tabstop>touchIDResetOnScreenLockCheckBox</tabstop> diff --git a/src/gui/CategoryListWidget.ui b/src/gui/CategoryListWidget.ui index f16165cdb..f21f47187 100644 --- a/src/gui/CategoryListWidget.ui +++ b/src/gui/CategoryListWidget.ui @@ -6,7 +6,7 @@ <rect> <x>0</x> <y>0</y> - <width>182</width> + <width>256</width> <height>418</height> </rect> </property> @@ -113,8 +113,8 @@ </layout> </widget> <tabstops> - <tabstop>categoryList</tabstop> <tabstop>scrollUp</tabstop> + <tabstop>categoryList</tabstop> <tabstop>scrollDown</tabstop> </tabstops> <resources/> diff --git a/src/gui/DatabaseOpenWidget.ui b/src/gui/DatabaseOpenWidget.ui index 278d45c47..8ae2e9d68 100644 --- a/src/gui/DatabaseOpenWidget.ui +++ b/src/gui/DatabaseOpenWidget.ui @@ -246,6 +246,9 @@ <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> + <property name="focusPolicy"> + <enum>Qt::ClickFocus</enum> + </property> <property name="toolTip"> <string><p>In addition to your master password, you can use a secret file to enhance the security of your database. Such a file can be generated in your database's security settings.</p><p>This is <strong>not</strong> your *.kdbx database file!<br>If you do not have a key file, leave the field empty.</p><p>Click for more information...</p></string> </property> @@ -347,6 +350,9 @@ <property name="cursor"> <cursorShape>PointingHandCursor</cursorShape> </property> + <property name="focusPolicy"> + <enum>Qt::ClickFocus</enum> + </property> <property name="toolTip"> <string><p>You can use a hardware security key such as a <strong>YubiKey</strong> or <strong>OnlyKey</strong> with slots configured for HMAC-SHA1.</p> <p>Click for more information...</p></string> @@ -586,11 +592,6 @@ </widget> <customwidgets> <customwidget> - <class>PasswordEdit</class> - <extends>QLineEdit</extends> - <header>gui/PasswordEdit.h</header> - </customwidget> - <customwidget> <class>MessageWidget</class> <extends>QWidget</extends> <header>gui/MessageWidget.h</header> @@ -601,12 +602,18 @@ <extends>QLabel</extends> <header>gui/widgets/ElidedLabel.h</header> </customwidget> + <customwidget> + <class>PasswordEdit</class> + <extends>QLineEdit</extends> + <header>gui/PasswordEdit.h</header> + </customwidget> </customwidgets> <tabstops> + <tabstop>editPassword</tabstop> <tabstop>comboKeyFile</tabstop> <tabstop>buttonBrowseFile</tabstop> - <tabstop>hardwareKeyLabelHelp</tabstop> <tabstop>challengeResponseCombo</tabstop> + <tabstop>buttonRedetectYubikey</tabstop> <tabstop>checkTouchID</tabstop> </tabstops> <resources/> diff --git a/src/gui/EditWidget.ui b/src/gui/EditWidget.ui index b8ac5f3eb..8bbec46bc 100644 --- a/src/gui/EditWidget.ui +++ b/src/gui/EditWidget.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>612</width> - <height>255</height> + <width>527</width> + <height>391</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout"> @@ -15,11 +15,27 @@ <widget class="MessageWidget" name="messageWidget" native="true"/> </item> <item> - <widget class="QLabel" name="headerLabel"> - <property name="text"> - <string/> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <property name="leftMargin"> + <number>2</number> </property> - </widget> + <property name="topMargin"> + <number>2</number> + </property> + <property name="rightMargin"> + <number>2</number> + </property> + <property name="bottomMargin"> + <number>2</number> + </property> + <item> + <widget class="QLabel" name="headerLabel"> + <property name="text"> + <string/> + </property> + </widget> + </item> + </layout> </item> <item> <spacer name="verticalSpacer"> @@ -39,6 +55,9 @@ </item> <item> <layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0"> + <property name="spacing"> + <number>18</number> + </property> <item> <widget class="CategoryListWidget" name="categoryList" native="true"> <property name="sizePolicy"> diff --git a/src/gui/EditWidgetIcons.cpp b/src/gui/EditWidgetIcons.cpp index 9ffb80ae5..e348e8803 100644 --- a/src/gui/EditWidgetIcons.cpp +++ b/src/gui/EditWidgetIcons.cpp @@ -163,7 +163,7 @@ void EditWidgetIcons::setShowApplyIconToButton(bool state) QMenu* EditWidgetIcons::createApplyIconToMenu() { auto* applyIconToMenu = new QMenu(this); - QAction* defaultAction = applyIconToMenu->addAction(tr("Apply to this only")); + QAction* defaultAction = applyIconToMenu->addAction(tr("Apply to this group only")); defaultAction->setData(QVariant::fromValue(ApplyIconToOptions::THIS_ONLY)); applyIconToMenu->setDefaultAction(defaultAction); applyIconToMenu->addSeparator(); diff --git a/src/gui/EditWidgetIcons.ui b/src/gui/EditWidgetIcons.ui index 5b1bd9b0a..b23f5fba3 100644 --- a/src/gui/EditWidgetIcons.ui +++ b/src/gui/EditWidgetIcons.ui @@ -56,6 +56,22 @@ </widget> </item> <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> <widget class="QRadioButton" name="customIconsRadio"> <property name="text"> <string>Use custom icon</string> @@ -166,6 +182,7 @@ <tabstop>customIconsView</tabstop> <tabstop>addButton</tabstop> <tabstop>deleteButton</tabstop> + <tabstop>faviconButton</tabstop> <tabstop>applyIconToPushButton</tabstop> </tabstops> <resources/> diff --git a/src/gui/EditWidgetProperties.ui b/src/gui/EditWidgetProperties.ui index d80bf1584..0caa9ef27 100644 --- a/src/gui/EditWidgetProperties.ui +++ b/src/gui/EditWidgetProperties.ui @@ -6,11 +6,11 @@ <rect> <x>0</x> <y>0</y> - <width>614</width> - <height>328</height> + <width>364</width> + <height>408</height> </rect> </property> - <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0"> + <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0,0"> <property name="spacing"> <number>5</number> </property> @@ -27,18 +27,21 @@ <number>0</number> </property> <item> - <layout class="QFormLayout" name="formLayout_2"> - <property name="fieldGrowthPolicy"> - <enum>QFormLayout::ExpandingFieldsGrow</enum> + <layout class="QGridLayout" name="gridLayout"> + <property name="verticalSpacing"> + <number>8</number> </property> - <item row="1" column="0"> + <item row="0" column="0"> <widget class="QLabel" name="labelCreated"> <property name="text"> <string>Created:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> - <item row="1" column="1"> + <item row="0" column="1"> <widget class="QLineEdit" name="createdEdit"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> @@ -54,14 +57,17 @@ </property> </widget> </item> - <item row="2" column="0"> + <item row="1" column="0"> <widget class="QLabel" name="labelModfied"> <property name="text"> <string>Modified:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> - <item row="2" column="1"> + <item row="1" column="1"> <widget class="QLineEdit" name="modifiedEdit"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> @@ -77,14 +83,17 @@ </property> </widget> </item> - <item row="3" column="0"> + <item row="2" column="0"> <widget class="QLabel" name="labelAccessed"> <property name="text"> <string>Accessed:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> - <item row="3" column="1"> + <item row="2" column="1"> <widget class="QLineEdit" name="accessedEdit"> <property name="accessibleName"> <string>Datetime accessed</string> @@ -94,14 +103,17 @@ </property> </widget> </item> - <item row="4" column="0"> + <item row="3" column="0"> <widget class="QLabel" name="labelUuid"> <property name="text"> <string>Uuid:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> - <item row="4" column="1"> + <item row="3" column="1"> <widget class="QLineEdit" name="uuidEdit"> <property name="accessibleName"> <string>Unique ID</string> @@ -114,6 +126,22 @@ </layout> </item> <item> + <spacer name="verticalSpacer_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> <widget class="QGroupBox" name="groupBox"> <property name="title"> <string>Plugin Data</string> diff --git a/src/gui/EntryPreviewWidget.cpp b/src/gui/EntryPreviewWidget.cpp index 9332bb2d0..eee1dd00d 100644 --- a/src/gui/EntryPreviewWidget.cpp +++ b/src/gui/EntryPreviewWidget.cpp @@ -401,9 +401,6 @@ void EntryPreviewWidget::setTabEnabled(QTabWidget* tabWidget, QWidget* widget, b QString EntryPreviewWidget::hierarchy(const Group* group, const QString& title) { - const QString separator("] > ["); - QStringList hierarchy = group->hierarchy(); - QString groupList = QString("[%1]").arg(hierarchy.join(separator)); - - return title.isEmpty() ? groupList : QString("%1 > %2").arg(groupList, title); + QString groupList = QString("%1").arg(group->hierarchy().join(" / ")); + return title.isEmpty() ? groupList : QStringLiteral("%1 / %2").arg(groupList, title); } diff --git a/src/gui/EntryPreviewWidget.ui b/src/gui/EntryPreviewWidget.ui index 8c68ab9a0..d78b04a43 100644 --- a/src/gui/EntryPreviewWidget.ui +++ b/src/gui/EntryPreviewWidget.ui @@ -7,7 +7,7 @@ <x>0</x> <y>0</y> <width>566</width> - <height>206</height> + <height>247</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout_7"> @@ -46,49 +46,62 @@ <number>0</number> </property> <item> - <layout class="QHBoxLayout" name="entryHorizontalLayout" stretch="0,1,0,0,0"> + <layout class="QHBoxLayout" name="entryHorizontalLayout" stretch="0,0,0,0"> <property name="sizeConstraint"> <enum>QLayout::SetDefaultConstraint</enum> </property> <property name="leftMargin"> - <number>9</number> + <number>5</number> + </property> + <property name="topMargin"> + <number>3</number> + </property> + <property name="bottomMargin"> + <number>3</number> </property> <item> - <widget class="QLabel" name="entryIcon"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>16</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item> - <widget class="ElidedLabel" name="entryTitleLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> + <layout class="QHBoxLayout" name="horizontalLayout"> + <property name="spacing"> + <number>12</number> </property> - <property name="textFormat"> - <enum>Qt::AutoText</enum> - </property> - </widget> + <item> + <widget class="QLabel" name="entryIcon"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>16</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item> + <widget class="ElidedLabel" name="entryTitleLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="font"> + <font> + <pointsize>12</pointsize> + </font> + </property> + <property name="textFormat"> + <enum>Qt::AutoText</enum> + </property> + </widget> + </item> + </layout> </item> <item> <widget class="QLabel" name="entryTotpLabel"> @@ -757,43 +770,56 @@ <number>0</number> </property> <item> - <layout class="QHBoxLayout" name="groupHorizontalLayout" stretch="0,0,0"> + <layout class="QHBoxLayout" name="groupHorizontalLayout" stretch="0,0"> <property name="sizeConstraint"> <enum>QLayout::SetDefaultConstraint</enum> </property> <property name="leftMargin"> - <number>9</number> + <number>5</number> + </property> + <property name="topMargin"> + <number>3</number> + </property> + <property name="bottomMargin"> + <number>3</number> </property> <item> - <widget class="QLabel" name="groupIcon"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string/> - </property> - </widget> - </item> - <item> - <widget class="ElidedLabel" name="groupTitleLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="textFormat"> - <enum>Qt::AutoText</enum> + <layout class="QHBoxLayout" name="horizontalLayout_5"> + <property name="spacing"> + <number>12</number> </property> - </widget> + <item> + <widget class="QLabel" name="groupIcon"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="text"> + <string/> + </property> + </widget> + </item> + <item> + <widget class="ElidedLabel" name="groupTitleLabel"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="font"> + <font> + <pointsize>12</pointsize> + </font> + </property> + <property name="textFormat"> + <enum>Qt::AutoText</enum> + </property> + </widget> + </item> + </layout> </item> <item> <widget class="QToolButton" name="groupCloseButton"> @@ -1137,14 +1163,14 @@ </customwidget> </customwidgets> <tabstops> + <tabstop>entryTotpButton</tabstop> <tabstop>entryCloseButton</tabstop> <tabstop>entryTabWidget</tabstop> <tabstop>togglePasswordButton</tabstop> <tabstop>toggleEntryNotesButton</tabstop> - <tabstop>groupCloseButton</tabstop> <tabstop>groupTabWidget</tabstop> <tabstop>toggleGroupNotesButton</tabstop> - <tabstop>entryTotpButton</tabstop> + <tabstop>groupCloseButton</tabstop> </tabstops> <resources/> <connections/> diff --git a/src/gui/IconDownloaderDialog.ui b/src/gui/IconDownloaderDialog.ui index ed9fddd1e..fbcfb01f1 100644 --- a/src/gui/IconDownloaderDialog.ui +++ b/src/gui/IconDownloaderDialog.ui @@ -149,6 +149,11 @@ You can enable the DuckDuckGo website icon service in the security section of th </layout> </widget> <layoutdefault spacing="6" margin="11"/> + <tabstops> + <tabstop>cancelButton</tabstop> + <tabstop>tableView</tabstop> + <tabstop>closeButton</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/csvImport/CsvImportWidget.ui b/src/gui/csvImport/CsvImportWidget.ui index beaa39386..845fe16b4 100644 --- a/src/gui/csvImport/CsvImportWidget.ui +++ b/src/gui/csvImport/CsvImportWidget.ui @@ -497,6 +497,16 @@ <container>1</container> </customwidget> </customwidgets> + <tabstops> + <tabstop>comboBoxCodec</tabstop> + <tabstop>comboBoxTextQualifier</tabstop> + <tabstop>comboBoxFieldSeparator</tabstop> + <tabstop>comboBoxComment</tabstop> + <tabstop>checkBoxFieldNames</tabstop> + <tabstop>spinBoxSkip</tabstop> + <tabstop>checkBoxBackslash</tabstop> + <tabstop>tableViewFields</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetBrowser.ui b/src/gui/dbsettings/DatabaseSettingsWidgetBrowser.ui index 4fcf091e1..c67a5134b 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetBrowser.ui +++ b/src/gui/dbsettings/DatabaseSettingsWidgetBrowser.ui @@ -180,6 +180,14 @@ <container>1</container> </customwidget> </customwidgets> + <tabstops> + <tabstop>removeSharedEncryptionKeys</tabstop> + <tabstop>removeStoredPermissions</tabstop> + <tabstop>convertToCustomData</tabstop> + <tabstop>refreshDatabaseID</tabstop> + <tabstop>customDataTable</tabstop> + <tabstop>removeCustomDataButton</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.ui b/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.ui index 1e0bb383f..97da37475 100644 --- a/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.ui +++ b/src/gui/dbsettings/DatabaseSettingsWidgetEncryption.ui @@ -420,6 +420,17 @@ </item> </layout> </widget> + <tabstops> + <tabstop>activateChangeDecryptionTimeButton</tabstop> + <tabstop>decryptionTimeSlider</tabstop> + <tabstop>compatibilitySelection</tabstop> + <tabstop>algorithmComboBox</tabstop> + <tabstop>kdfComboBox</tabstop> + <tabstop>transformRoundsSpinBox</tabstop> + <tabstop>transformBenchmarkButton</tabstop> + <tabstop>memorySpinBox</tabstop> + <tabstop>parallelismSpinBox</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/entry/EditEntryWidget.cpp b/src/gui/entry/EditEntryWidget.cpp index 330a9cd6a..23fd51670 100644 --- a/src/gui/entry/EditEntryWidget.cpp +++ b/src/gui/entry/EditEntryWidget.cpp @@ -786,12 +786,12 @@ void EditEntryWidget::loadEntry(Entry* entry, m_history = history; if (history) { - setHeadline(QString("%1 > %2").arg(parentName, tr("Entry history"))); + setHeadline(QString("%1 \u2B29 %2").arg(parentName, tr("Entry history"))); } else { if (create) { - setHeadline(QString("%1 > %2").arg(parentName, tr("Add entry"))); + setHeadline(QString("%1 \u2B29 %2").arg(parentName, tr("Add entry"))); } else { - setHeadline(QString("%1 > %2 > %3").arg(parentName, entry->title(), tr("Edit entry"))); + setHeadline(QString("%1 \u2B29 %2 \u2B29 %3").arg(parentName, entry->title(), tr("Edit entry"))); } } diff --git a/src/gui/entry/EditEntryWidgetAdvanced.ui b/src/gui/entry/EditEntryWidgetAdvanced.ui index 8faa7a4f3..80841eb64 100644 --- a/src/gui/entry/EditEntryWidgetAdvanced.ui +++ b/src/gui/entry/EditEntryWidgetAdvanced.ui @@ -11,6 +11,18 @@ </rect> </property> <layout class="QVBoxLayout" name="verticalLayout"> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> <item> <widget class="QGroupBox" name="attributesBox"> <property name="title"> diff --git a/src/gui/entry/EditEntryWidgetAutoType.ui b/src/gui/entry/EditEntryWidgetAutoType.ui index 0008a7011..f82240d7d 100644 --- a/src/gui/entry/EditEntryWidgetAutoType.ui +++ b/src/gui/entry/EditEntryWidgetAutoType.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>567</width> - <height>348</height> + <width>577</width> + <height>434</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout_2"> @@ -107,6 +107,22 @@ </layout> </item> <item> + <spacer name="verticalSpacer_4"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item> <widget class="QGroupBox" name="windowsBox"> <property name="title"> <string>Window Associations</string> diff --git a/src/gui/entry/EditEntryWidgetMain.ui b/src/gui/entry/EditEntryWidgetMain.ui index 80b94c032..f96481a3f 100644 --- a/src/gui/entry/EditEntryWidgetMain.ui +++ b/src/gui/entry/EditEntryWidgetMain.ui @@ -6,11 +6,14 @@ <rect> <x>0</x> <y>0</y> - <width>430</width> - <height>381</height> + <width>496</width> + <height>420</height> </rect> </property> - <layout class="QGridLayout" name="gridLayout_3"> + <layout class="QGridLayout" name="gridLayout"> + <property name="leftMargin"> + <number>0</number> + </property> <property name="topMargin"> <number>0</number> </property> @@ -20,28 +23,149 @@ <property name="bottomMargin"> <number>0</number> </property> - <item row="8" column="1"> - <widget class="QLabel" name="notesHint"> - <property name="visible"> - <bool>true</bool> + <property name="horizontalSpacing"> + <number>10</number> + </property> + <property name="verticalSpacing"> + <number>8</number> + </property> + <item row="6" column="1"> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QPlainTextEdit" name="notesEdit"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> + <horstretch>0</horstretch> + <verstretch>1</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>0</width> + <height>100</height> + </size> + </property> + <property name="accessibleName"> + <string>Notes field</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="notesHint"> + <property name="visible"> + <bool>true</bool> + </property> + <property name="text"> + <string>Toggle the checkbox to reveal the notes section.</string> + </property> + <property name="alignment"> + <set>Qt::AlignTop</set> + </property> + </widget> + </item> + </layout> + </item> + <item row="1" column="1"> + <widget class="QComboBox" name="usernameComboBox"> + <property name="accessibleName"> + <string>Username field</string> </property> + </widget> + </item> + <item row="6" column="0"> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QCheckBox" name="notesEnabled"> + <property name="toolTip"> + <string>Toggle notes visible</string> + </property> + <property name="accessibleName"> + <string>Toggle notes visible</string> + </property> + <property name="text"> + <string>Notes:</string> + </property> + </widget> + </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>40</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + <item row="5" column="1"> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <property name="spacing"> + <number>8</number> + </property> + <item> + <widget class="QDateTimeEdit" name="expireDatePicker"> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="accessibleName"> + <string>Expiration field</string> + </property> + <property name="calendarPopup"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="expirePresets"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="toolTip"> + <string>Expiration Presets</string> + </property> + <property name="accessibleName"> + <string>Expiration presets</string> + </property> + <property name="text"> + <string>Presets</string> + </property> + </widget> + </item> + </layout> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="passwordLabel"> <property name="text"> - <string>Toggle the checkbox to reveal the notes section.</string> + <string>Password:</string> </property> <property name="alignment"> - <set>Qt::AlignTop</set> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="1" column="1"> - <widget class="QComboBox" name="usernameComboBox"> - <property name="accessibleName"> - <string>Username field</string> + <item row="3" column="0"> + <widget class="QLabel" name="urlLabel"> + <property name="text"> + <string>URL:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="4" column="1"> + <item row="3" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_6"> + <property name="spacing"> + <number>8</number> + </property> <item> <widget class="URLEdit" name="urlEdit"> <property name="accessibleName"> @@ -64,139 +188,64 @@ </item> </layout> </item> - <item row="4" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="urlLabel"> + <item row="0" column="0"> + <widget class="QLabel" name="titleLabel"> <property name="text"> - <string>URL:</string> + <string>Title:</string> </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="PasswordEdit" name="passwordEdit"> - <property name="accessibleName"> - <string>Password field</string> - </property> - <property name="echoMode"> - <enum>QLineEdit::Password</enum> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="6" column="0" alignment="Qt::AlignRight"> - <widget class="QCheckBox" name="expireCheck"> - <property name="toolTip"> - <string>Toggle expiration</string> - </property> + <item row="0" column="1"> + <widget class="QLineEdit" name="titleEdit"> <property name="accessibleName"> - <string>Toggle expiration</string> - </property> - <property name="text"> - <string>Expires</string> + <string>Title field</string> </property> </widget> </item> - <item row="8" column="1"> - <widget class="QPlainTextEdit" name="notesEdit"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> - <horstretch>0</horstretch> - <verstretch>1</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>0</width> - <height>100</height> - </size> + <item row="1" column="0"> + <widget class="QLabel" name="usernameLabel"> + <property name="text"> + <string>Username:</string> </property> - <property name="accessibleName"> - <string>Notes field</string> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="8" column="0" alignment="Qt::AlignLeft|Qt::AlignTop"> - <widget class="QCheckBox" name="notesEnabled"> - <property name="toolTip"> - <string>Toggle notes visible</string> - </property> + <item row="2" column="1"> + <widget class="PasswordEdit" name="passwordEdit"> <property name="accessibleName"> - <string>Toggle notes visible</string> - </property> - <property name="text"> - <string>Notes</string> + <string>Password field</string> </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="QLineEdit" name="titleEdit"> - <property name="accessibleName"> - <string>Title field</string> + <property name="echoMode"> + <enum>QLineEdit::Password</enum> </property> </widget> </item> - <item row="2" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="passwordLabel"> - <property name="text"> - <string>Password:</string> + <item row="5" column="0"> + <layout class="QHBoxLayout" name="horizontalLayout"> + <property name="spacing"> + <number>0</number> </property> - </widget> - </item> - <item row="6" column="1"> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <widget class="QDateTimeEdit" name="expireDatePicker"> - <property name="enabled"> - <bool>false</bool> - </property> - <property name="accessibleName"> - <string>Expiration field</string> - </property> - <property name="calendarPopup"> - <bool>true</bool> - </property> - </widget> - </item> <item> - <widget class="QPushButton" name="expirePresets"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> + <widget class="QCheckBox" name="expireCheck"> <property name="toolTip"> - <string>Expiration Presets</string> + <string>Toggle expiration</string> </property> <property name="accessibleName"> - <string>Expiration presets</string> + <string>Toggle expiration</string> </property> <property name="text"> - <string>Presets</string> + <string>Expires:</string> </property> </widget> </item> </layout> </item> - <item row="1" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="usernameLabel"> - <property name="text"> - <string>Username:</string> - </property> - </widget> - </item> </layout> - <widget class="QLabel" name="titleLabel"> - <property name="geometry"> - <rect> - <x>35</x> - <y>0</y> - <width>23</width> - <height>19</height> - </rect> - </property> - <property name="text"> - <string>Title:</string> - </property> - </widget> </widget> <customwidgets> <customwidget> diff --git a/src/gui/entry/EditEntryWidgetSSHAgent.ui b/src/gui/entry/EditEntryWidgetSSHAgent.ui index 2e9d94b65..fae13dccb 100644 --- a/src/gui/entry/EditEntryWidgetSSHAgent.ui +++ b/src/gui/entry/EditEntryWidgetSSHAgent.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>498</width> - <height>518</height> + <width>452</width> + <height>618</height> </rect> </property> <property name="windowTitle"> @@ -26,53 +26,6 @@ <property name="bottomMargin"> <number>0</number> </property> - <item row="3" column="1" colspan="4"> - <layout class="QHBoxLayout" name="removeKeyLayout"> - <item> - <widget class="QCheckBox" name="lifetimeCheckBox"> - <property name="text"> - <string>Remove key from agent after</string> - </property> - </widget> - </item> - <item> - <widget class="QSpinBox" name="lifetimeSpinBox"> - <property name="accessibleName"> - <string>Remove key from agent after specified seconds</string> - </property> - <property name="suffix"> - <string> seconds</string> - </property> - <property name="maximum"> - <number>999999999</number> - </property> - </widget> - </item> - <item> - <spacer name="removeKeySpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item row="11" column="1"> - <widget class="QLabel" name="fingerprintLabel"> - <property name="text"> - <string>Fingerprint</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> <item row="1" column="1" colspan="4"> <widget class="QCheckBox" name="removeKeyFromAgentCheckBox"> <property name="text"> @@ -80,13 +33,13 @@ </property> </widget> </item> - <item row="13" column="1"> - <widget class="QLabel" name="publicKeyLabel"> + <item row="14" column="1"> + <widget class="QLabel" name="commentLabel"> <property name="text"> - <string>Public key</string> + <string>Comment</string> </property> <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> @@ -97,63 +50,69 @@ </property> </widget> </item> - <item row="12" column="1"> - <widget class="QLabel" name="commentLabel"> - <property name="text"> - <string>Comment</string> + <item row="15" column="3" colspan="2"> + <widget class="QPlainTextEdit" name="publicKeyEdit"> + <property name="font"> + <font> + <family>Monospace</family> + </font> </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + <property name="readOnly"> + <bool>true</bool> </property> </widget> </item> - <item row="12" column="4"> + <item row="14" column="4"> <widget class="QPushButton" name="decryptButton"> <property name="text"> <string>Decrypt</string> </property> </widget> </item> - <item row="11" column="3" colspan="2"> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <widget class="QLabel" name="fingerprintTextLabel"> - <property name="font"> - <font> - <family>Monospace</family> - </font> - </property> - <property name="text"> - <string>n/a</string> - </property> - <property name="textInteractionFlags"> - <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> + <item row="4" column="1"> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> + <item row="13" column="1"> + <widget class="QLabel" name="fingerprintLabel"> + <property name="text"> + <string>Fingerprint</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> </item> - <item row="14" column="3" colspan="2"> + <item row="16" column="3" colspan="2"> <widget class="QPushButton" name="copyToClipboardButton"> <property name="text"> <string>Copy to clipboard</string> </property> </widget> </item> - <item row="4" column="1" colspan="4"> + <item row="15" column="1"> + <widget class="QLabel" name="publicKeyLabel"> + <property name="text"> + <string>Public key</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set> + </property> + </widget> + </item> + <item row="5" column="1" colspan="4"> <widget class="QGroupBox" name="privateKeyGroupBox"> <property name="title"> <string>Private key</string> @@ -240,19 +199,7 @@ </property> </widget> </item> - <item row="13" column="3" colspan="2"> - <widget class="QPlainTextEdit" name="publicKeyEdit"> - <property name="font"> - <font> - <family>Monospace</family> - </font> - </property> - <property name="readOnly"> - <bool>true</bool> - </property> - </widget> - </item> - <item row="12" column="3"> + <item row="14" column="3"> <layout class="QHBoxLayout" name="horizontalLayout_4"> <item> <widget class="QLabel" name="commentTextLabel"> @@ -284,6 +231,91 @@ </item> </layout> </item> + <item row="3" column="1" colspan="4"> + <layout class="QHBoxLayout" name="removeKeyLayout"> + <item> + <widget class="QCheckBox" name="lifetimeCheckBox"> + <property name="text"> + <string>Remove key from agent after</string> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="lifetimeSpinBox"> + <property name="accessibleName"> + <string>Remove key from agent after specified seconds</string> + </property> + <property name="suffix"> + <string> seconds</string> + </property> + <property name="maximum"> + <number>999999999</number> + </property> + </widget> + </item> + <item> + <spacer name="removeKeySpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + <item row="13" column="3" colspan="2"> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="fingerprintTextLabel"> + <property name="font"> + <font> + <family>Monospace</family> + </font> + </property> + <property name="text"> + <string>n/a</string> + </property> + <property name="textInteractionFlags"> + <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_2"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + <item row="12" column="3"> + <spacer name="verticalSpacer_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>10</height> + </size> + </property> + </spacer> + </item> </layout> </widget> <tabstops> diff --git a/src/gui/group/EditGroupWidgetMain.ui b/src/gui/group/EditGroupWidgetMain.ui index f23e43f19..9531cc847 100644 --- a/src/gui/group/EditGroupWidgetMain.ui +++ b/src/gui/group/EditGroupWidgetMain.ui @@ -6,13 +6,13 @@ <rect> <x>0</x> <y>0</y> - <width>579</width> - <height>407</height> + <width>410</width> + <height>430</height> </rect> </property> - <layout class="QGridLayout" name="gridLayout"> + <layout class="QGridLayout" name="gridLayout" rowstretch="0,0,0,0,0,0,0,0,0,1" rowminimumheight="0,0,0,0,0,0,0,0,0,1"> <property name="leftMargin"> - <number>10</number> + <number>0</number> </property> <property name="topMargin"> <number>0</number> @@ -23,64 +23,30 @@ <property name="bottomMargin"> <number>0</number> </property> - <item row="0" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="labelName"> - <property name="text"> - <string>Name</string> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="QLineEdit" name="editName"> - <property name="accessibleName"> - <string>Name field</string> - </property> - </widget> - </item> - <item row="1" column="0" alignment="Qt::AlignRight|Qt::AlignTop"> - <widget class="QLabel" name="labelNotes"> - <property name="text"> - <string>Notes</string> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="QPlainTextEdit" name="editNotes"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="maximumSize"> - <size> - <width>16777215</width> - <height>120</height> - </size> - </property> - <property name="accessibleName"> - <string>Notes field</string> - </property> - </widget> - </item> - <item row="2" column="0" alignment="Qt::AlignRight"> + <property name="horizontalSpacing"> + <number>10</number> + </property> + <property name="verticalSpacing"> + <number>8</number> + </property> + <item row="3" column="0"> <widget class="QCheckBox" name="expireCheck"> <property name="accessibleName"> <string>Toggle expiration</string> </property> <property name="text"> - <string>Expires</string> + <string>Expires:</string> </property> </widget> </item> - <item row="4" column="1"> - <widget class="QComboBox" name="autotypeComboBox"> + <item row="0" column="1"> + <widget class="QLineEdit" name="editName"> <property name="accessibleName"> - <string>Auto-Type toggle for this and sub groups</string> + <string>Name field</string> </property> </widget> </item> - <item row="2" column="1"> + <item row="3" column="1"> <widget class="QDateTimeEdit" name="expireDatePicker"> <property name="enabled"> <bool>false</bool> @@ -93,42 +59,68 @@ </property> </widget> </item> - <item row="3" column="0" alignment="Qt::AlignRight"> - <widget class="QLabel" name="searchLabel"> + <item row="6" column="1"> + <widget class="QRadioButton" name="autoTypeSequenceInherit"> <property name="text"> - <string>Search</string> - </property> - </widget> - </item> - <item row="3" column="1"> - <widget class="QComboBox" name="searchComboBox"> - <property name="accessibleName"> - <string>Search toggle for this and sub groups</string> + <string>Use default Auto-Type sequence of parent group</string> </property> </widget> </item> - <item row="4" column="0" alignment="Qt::AlignRight"> + <item row="5" column="0"> <widget class="QLabel" name="autotypeLabel"> <property name="text"> - <string>Auto-Type</string> + <string>Auto-Type:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="5" column="1"> - <widget class="QRadioButton" name="autoTypeSequenceInherit"> + <item row="4" column="0"> + <widget class="QLabel" name="searchLabel"> <property name="text"> - <string>Use default Auto-Type sequence of parent group</string> + <string>Search:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> </property> </widget> </item> - <item row="6" column="1"> - <widget class="QRadioButton" name="autoTypeSequenceCustomRadio"> - <property name="text"> - <string>Set default Auto-Type sequence</string> + <item row="5" column="1"> + <widget class="QComboBox" name="autotypeComboBox"> + <property name="accessibleName"> + <string>Auto-Type toggle for this and sub groups</string> </property> </widget> </item> - <item row="7" column="1"> + <item row="1" column="0"> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QLabel" name="labelNotes"> + <property name="text"> + <string>Notes:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item> + <spacer name="verticalSpacer_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>0</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + <item row="8" column="1"> <layout class="QHBoxLayout" name="horizontalLayout_2"> <item> <spacer name="horizontalSpacer_2"> @@ -140,8 +132,8 @@ </property> <property name="sizeHint" stdset="0"> <size> - <width>13</width> - <height>1</height> + <width>30</width> + <height>0</height> </size> </property> </spacer> @@ -161,8 +153,51 @@ </item> </layout> </item> - <item row="8" column="1"> - <spacer name="verticalSpacer"> + <item row="1" column="1"> + <widget class="QPlainTextEdit" name="editNotes"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="maximumSize"> + <size> + <width>16777215</width> + <height>120</height> + </size> + </property> + <property name="accessibleName"> + <string>Notes field</string> + </property> + </widget> + </item> + <item row="0" column="0"> + <widget class="QLabel" name="labelName"> + <property name="text"> + <string>Name:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="7" column="1"> + <widget class="QRadioButton" name="autoTypeSequenceCustomRadio"> + <property name="text"> + <string>Set default Auto-Type sequence</string> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="QComboBox" name="searchComboBox"> + <property name="accessibleName"> + <string>Search toggle for this and sub groups</string> + </property> + </widget> + </item> + <item row="9" column="0"> + <spacer name="verticalSpacer_4"> <property name="orientation"> <enum>Qt::Vertical</enum> </property> @@ -183,6 +218,9 @@ <tabstop>expireDatePicker</tabstop> <tabstop>searchComboBox</tabstop> <tabstop>autotypeComboBox</tabstop> + <tabstop>autoTypeSequenceInherit</tabstop> + <tabstop>autoTypeSequenceCustomRadio</tabstop> + <tabstop>autoTypeSequenceCustomEdit</tabstop> </tabstops> <resources/> <connections/> diff --git a/src/gui/reports/ReportsWidgetHealthcheck.ui b/src/gui/reports/ReportsWidgetHealthcheck.ui index 202ca6b19..38359a881 100644 --- a/src/gui/reports/ReportsWidgetHealthcheck.ui +++ b/src/gui/reports/ReportsWidgetHealthcheck.ui @@ -75,6 +75,10 @@ </item> </layout> </widget> + <tabstops> + <tabstop>healthcheckTableView</tabstop> + <tabstop>showKnownBadCheckBox</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/reports/ReportsWidgetHibp.ui b/src/gui/reports/ReportsWidgetHibp.ui index af5931193..3de67a817 100644 --- a/src/gui/reports/ReportsWidgetHibp.ui +++ b/src/gui/reports/ReportsWidgetHibp.ui @@ -227,6 +227,11 @@ </item> </layout> </widget> + <tabstops> + <tabstop>hibpTableView</tabstop> + <tabstop>showKnownBadCheckBox</tabstop> + <tabstop>validationButton</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/gui/reports/ReportsWidgetStatistics.ui b/src/gui/reports/ReportsWidgetStatistics.ui index 4b96dc51a..047b55cf0 100644 --- a/src/gui/reports/ReportsWidgetStatistics.ui +++ b/src/gui/reports/ReportsWidgetStatistics.ui @@ -65,6 +65,9 @@ </item> </layout> </widget> + <tabstops> + <tabstop>statisticsTableView</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/keeshare/SettingsWidgetKeeShare.ui b/src/keeshare/SettingsWidgetKeeShare.ui index 0840c9747..44fb9f1da 100644 --- a/src/keeshare/SettingsWidgetKeeShare.ui +++ b/src/keeshare/SettingsWidgetKeeShare.ui @@ -7,7 +7,7 @@ <x>0</x> <y>0</y> <width>378</width> - <height>508</height> + <height>511</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout" stretch="0,0,0,0"> @@ -80,11 +80,17 @@ <string>Own certificate</string> </property> <layout class="QGridLayout" name="gridLayout_2" columnstretch="0,1,1"> + <property name="horizontalSpacing"> + <number>10</number> + </property> <item row="5" column="0"> <widget class="QLabel" name="ownCertificateFingerprintLabel"> <property name="text"> <string>Fingerprint:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> <item row="3" column="1" colspan="2"> @@ -102,6 +108,9 @@ <property name="text"> <string>Certificate:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> <item row="2" column="0"> @@ -109,6 +118,9 @@ <property name="text"> <string>Signer:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> <item row="3" column="0"> @@ -116,6 +128,9 @@ <property name="text"> <string>Key:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> <item row="4" column="1" colspan="2"> @@ -310,6 +325,23 @@ </item> </layout> </widget> + <tabstops> + <tabstop>enableImportCheckBox</tabstop> + <tabstop>quietSuccessCheckBox</tabstop> + <tabstop>enableExportCheckBox</tabstop> + <tabstop>generateOwnCerticateButton</tabstop> + <tabstop>importOwnCertificateButton</tabstop> + <tabstop>exportOwnCertificateButton</tabstop> + <tabstop>ownCertificateSignerEdit</tabstop> + <tabstop>ownCertificatePrivateKeyEdit</tabstop> + <tabstop>ownCertificatePublicKeyEdit</tabstop> + <tabstop>ownCertificateFingerprintEdit</tabstop> + <tabstop>trustImportedCertificateButton</tabstop> + <tabstop>askImportedCertificateButton</tabstop> + <tabstop>untrustImportedCertificateButton</tabstop> + <tabstop>removeImportedCertificateButton</tabstop> + <tabstop>importedCertificateTableView</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/keeshare/group/EditGroupWidgetKeeShare.ui b/src/keeshare/group/EditGroupWidgetKeeShare.ui index 58d8dccb3..7cea782f1 100644 --- a/src/keeshare/group/EditGroupWidgetKeeShare.ui +++ b/src/keeshare/group/EditGroupWidgetKeeShare.ui @@ -6,26 +6,37 @@ <rect> <x>0</x> <y>0</y> - <width>344</width> - <height>143</height> + <width>361</width> + <height>180</height> </rect> </property> <layout class="QVBoxLayout" name="verticalLayout"> + <property name="spacing"> + <number>0</number> + </property> <property name="leftMargin"> - <number>10</number> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> </property> <item> <widget class="MessageWidget" name="messageWidget" native="true"/> </item> <item> - <layout class="QFormLayout" name="formLayout"> - <item row="0" column="0"> - <widget class="QLabel" name="typeLabel"> - <property name="text"> - <string>Type:</string> - </property> - </widget> - </item> + <layout class="QGridLayout" name="gridLayout"> + <property name="horizontalSpacing"> + <number>10</number> + </property> + <property name="verticalSpacing"> + <number>8</number> + </property> <item row="0" column="1"> <widget class="QComboBox" name="typeComboBox"> <property name="sizePolicy"> @@ -39,15 +50,63 @@ </property> </widget> </item> + <item row="2" column="1"> + <widget class="PasswordEdit" name="passwordEdit"> + <property name="sizePolicy"> + <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>200</width> + <height>0</height> + </size> + </property> + <property name="accessibleName"> + <string>Password field</string> + </property> + <property name="echoMode"> + <enum>QLineEdit::Password</enum> + </property> + </widget> + </item> + <item row="0" column="0"> + <widget class="QLabel" name="typeLabel"> + <property name="text"> + <string>Type:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="passwordLabel"> + <property name="text"> + <string>Password:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> <item row="1" column="0"> <widget class="QLabel" name="pathLabel"> <property name="text"> <string>Path:</string> </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> </widget> </item> <item row="1" column="1"> <layout class="QHBoxLayout" name="pathLayout"> + <property name="spacing"> + <number>6</number> + </property> <item> <widget class="QLineEdit" name="pathEdit"> <property name="sizePolicy"> @@ -79,35 +138,6 @@ </item> </layout> </item> - <item row="2" column="0"> - <widget class="QLabel" name="passwordLabel"> - <property name="text"> - <string>Password:</string> - </property> - </widget> - </item> - <item row="2" column="1"> - <widget class="PasswordEdit" name="passwordEdit"> - <property name="sizePolicy"> - <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>200</width> - <height>0</height> - </size> - </property> - <property name="accessibleName"> - <string>Password field</string> - </property> - <property name="echoMode"> - <enum>QLineEdit::Password</enum> - </property> - </widget> - </item> <item row="3" column="1"> <layout class="QHBoxLayout" name="horizontalLayout"> <item> @@ -141,21 +171,21 @@ </item> </layout> </item> + <item row="4" column="0"> + <spacer name="verticalSpacer_2"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>0</height> + </size> + </property> + </spacer> + </item> </layout> </item> - <item> - <spacer name="verticalSpacer"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> </layout> </widget> <customwidgets> @@ -172,6 +202,13 @@ <container>1</container> </customwidget> </customwidgets> + <tabstops> + <tabstop>typeComboBox</tabstop> + <tabstop>pathEdit</tabstop> + <tabstop>pathSelectionButton</tabstop> + <tabstop>passwordEdit</tabstop> + <tabstop>clearButton</tabstop> + </tabstops> <resources/> <connections/> </ui> diff --git a/src/sshagent/AgentSettingsWidget.cpp b/src/sshagent/AgentSettingsWidget.cpp index f7d85ce77..3db5431fc 100644 --- a/src/sshagent/AgentSettingsWidget.cpp +++ b/src/sshagent/AgentSettingsWidget.cpp @@ -36,6 +36,7 @@ AgentSettingsWidget::AgentSettingsWidget(QWidget* parent) m_ui->sshAuthSockMessageWidget->setVisible(sshAgent()->isEnabled()); m_ui->sshAuthSockMessageWidget->setCloseButtonVisible(false); m_ui->sshAuthSockMessageWidget->setAutoHideTimeout(-1); + connect(m_ui->enableSSHAgentCheckBox, SIGNAL(stateChanged(int)), SLOT(toggleSettingsEnabled())); } AgentSettingsWidget::~AgentSettingsWidget() @@ -76,6 +77,8 @@ void AgentSettingsWidget::loadSettings() m_ui->sshAuthSockMessageWidget->showMessage(sshAgent()->errorString(), MessageWidget::Error); } } + + toggleSettingsEnabled(); } void AgentSettingsWidget::saveSettings() @@ -87,3 +90,8 @@ void AgentSettingsWidget::saveSettings() #endif sshAgent()->setEnabled(m_ui->enableSSHAgentCheckBox->isChecked()); } + +void AgentSettingsWidget::toggleSettingsEnabled() +{ + m_ui->agentConfigPageBody->setEnabled(m_ui->enableSSHAgentCheckBox->isChecked()); +} diff --git a/src/sshagent/AgentSettingsWidget.h b/src/sshagent/AgentSettingsWidget.h index 8667be657..fcc65818c 100644 --- a/src/sshagent/AgentSettingsWidget.h +++ b/src/sshagent/AgentSettingsWidget.h @@ -37,6 +37,7 @@ public: public slots: void loadSettings(); void saveSettings(); + void toggleSettingsEnabled(); private: QScopedPointer<Ui::AgentSettingsWidget> m_ui; diff --git a/src/sshagent/AgentSettingsWidget.ui b/src/sshagent/AgentSettingsWidget.ui index 3b8c70fad..71958644f 100644 --- a/src/sshagent/AgentSettingsWidget.ui +++ b/src/sshagent/AgentSettingsWidget.ui @@ -10,7 +10,7 @@ <height>300</height> </rect> </property> - <layout class="QVBoxLayout" name="verticalLayout_3"> + <layout class="QVBoxLayout" name="verticalLayout"> <property name="leftMargin"> <number>0</number> </property> @@ -24,22 +24,42 @@ <number>0</number> </property> <item> - <widget class="QCheckBox" name="enableSSHAgentCheckBox"> - <property name="text"> - <string>Enable SSH Agent integration</string> - </property> + <widget class="QWidget" name="sshAuthSockWidget" native="true"> + <layout class="QGridLayout" name="sshAuthSockOverrideLayout"> + <property name="leftMargin"> + <number>0</number> + </property> + <property name="topMargin"> + <number>0</number> + </property> + <property name="rightMargin"> + <number>0</number> + </property> + <property name="bottomMargin"> + <number>0</number> + </property> + </layout> </widget> </item> <item> - <widget class="QCheckBox" name="useOpenSSHCheckBox"> + <widget class="MessageWidget" name="sshAuthSockMessageWidget" native="true"/> + </item> + <item> + <widget class="QCheckBox" name="enableSSHAgentCheckBox"> <property name="text"> - <string>Use OpenSSH for Windows instead of Pageant</string> + <string>Enable SSH Agent integration</string> </property> </widget> </item> <item> - <widget class="QWidget" name="sshAuthSockWidget" native="true"> - <layout class="QGridLayout" name="sshAuthSockOverrideLayout"> + <widget class="QFrame" name="agentConfigPageBody"> + <property name="frameShape"> + <enum>QFrame::NoFrame</enum> + </property> + <property name="frameShadow"> + <enum>QFrame::Plain</enum> + </property> + <layout class="QVBoxLayout" name="verticalLayout_2"> <property name="leftMargin"> <number>0</number> </property> @@ -52,57 +72,83 @@ <property name="bottomMargin"> <number>0</number> </property> - <item row="4" column="0"> - <widget class="QLabel" name="sshAuthSockValueLabel"> + <item> + <widget class="QCheckBox" name="useOpenSSHCheckBox"> <property name="text"> - <string>SSH_AUTH_SOCK value</string> + <string>Use OpenSSH for Windows instead of Pageant</string> </property> </widget> </item> - <item row="4" column="1"> - <widget class="QLabel" name="sshAuthSockLabel"> - <property name="font"> - <font> - <family>Monospace</family> - </font> + <item> + <layout class="QGridLayout" name="agentValues"> + <property name="topMargin"> + <number>10</number> </property> - <property name="text"> - <string>(empty)</string> + <property name="bottomMargin"> + <number>10</number> </property> - <property name="textInteractionFlags"> - <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> + <property name="horizontalSpacing"> + <number>10</number> </property> - </widget> - </item> - <item row="5" column="0"> - <widget class="QLabel" name="sshAuthSockOverrideLabel"> - <property name="text"> - <string>SSH_AUTH_SOCK override</string> + <property name="verticalSpacing"> + <number>8</number> </property> - </widget> - </item> - <item row="5" column="1"> - <widget class="QLineEdit" name="sshAuthSockOverrideEdit"/> + <item row="0" column="0"> + <widget class="QLabel" name="sshAuthSockValueLabel"> + <property name="text"> + <string>SSH_AUTH_SOCK value</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="sshAuthSockOverrideLabel"> + <property name="text"> + <string>SSH_AUTH_SOCK override</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="QLineEdit" name="sshAuthSockOverrideEdit"/> + </item> + <item row="0" column="1"> + <widget class="QLabel" name="sshAuthSockLabel"> + <property name="font"> + <font> + <family>Monospace</family> + </font> + </property> + <property name="text"> + <string>(empty)</string> + </property> + <property name="textInteractionFlags"> + <set>Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set> + </property> + </widget> + </item> + <item row="2" column="0"> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>40</height> + </size> + </property> + </spacer> + </item> + </layout> </item> </layout> </widget> </item> - <item> - <widget class="MessageWidget" name="sshAuthSockMessageWidget" native="true"/> - </item> - <item> - <spacer name="verticalSpacer"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> </layout> </widget> <customwidgets> |