From 4a870f61f1fa52bd53eb778a46842740a16ba3c9 Mon Sep 17 00:00:00 2001 From: Charles Brunet Date: Tue, 29 Oct 2013 20:54:56 +0100 Subject: [PATCH] Added option to minimize window when copying data to clipboard https://github.com/keepassx/keepassx/pull/24 --- src/core/Config.cpp | 1 + src/gui/DatabaseWidget.cpp | 13 +++++++++++++ src/gui/SettingsWidget.cpp | 2 ++ src/gui/SettingsWidgetGeneral.ui | 13 ++++++++++--- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/core/Config.cpp b/src/core/Config.cpp index e90e41271..9fe851675 100644 --- a/src/core/Config.cpp +++ b/src/core/Config.cpp @@ -93,6 +93,7 @@ void Config::init(const QString& fileName) m_defaults.insert("AutoSaveAfterEveryChange", false); m_defaults.insert("AutoSaveOnExit", false); m_defaults.insert("ShowToolbar", true); + m_defaults.insert("MinimizeOnCopy", false); m_defaults.insert("security/clearclipboard", true); m_defaults.insert("security/clearclipboardtimeout", 10); } diff --git a/src/gui/DatabaseWidget.cpp b/src/gui/DatabaseWidget.cpp index ef33c01cb..e6b8a4e27 100644 --- a/src/gui/DatabaseWidget.cpp +++ b/src/gui/DatabaseWidget.cpp @@ -27,6 +27,7 @@ #include #include "autotype/AutoType.h" +#include "core/Config.h" #include "core/FilePath.h" #include "core/Metadata.h" #include "core/Tools.h" @@ -295,6 +296,10 @@ void DatabaseWidget::copyUsername() } clipboard()->setText(currentEntry->username()); + + if (config()->get("MinimizeOnCopy").toBool()) { + window()->showMinimized(); + } } void DatabaseWidget::copyPassword() @@ -306,6 +311,10 @@ void DatabaseWidget::copyPassword() } clipboard()->setText(currentEntry->password()); + + if (config()->get("MinimizeOnCopy").toBool()) { + window()->showMinimized(); + } } void DatabaseWidget::copyAttribute(QAction* action) @@ -317,6 +326,10 @@ void DatabaseWidget::copyAttribute(QAction* action) } clipboard()->setText(currentEntry->attributes()->value(action->text())); + + if (config()->get("MinimizeOnCopy").toBool()) { + window()->showMinimized(); + } } void DatabaseWidget::performAutoType() diff --git a/src/gui/SettingsWidget.cpp b/src/gui/SettingsWidget.cpp index d052964a4..0ae916108 100644 --- a/src/gui/SettingsWidget.cpp +++ b/src/gui/SettingsWidget.cpp @@ -58,6 +58,7 @@ void SettingsWidget::loadSettings() m_generalUi->modifiedExpandedChangedCheckBox->setChecked(config()->get("ModifiedOnExpandedStateChanges").toBool()); m_generalUi->autoSaveAfterEveryChangeCheckBox->setChecked(config()->get("AutoSaveAfterEveryChange").toBool()); m_generalUi->autoSaveOnExitCheckBox->setChecked(config()->get("AutoSaveOnExit").toBool()); + m_generalUi->minimizeOnCopyCheckBox->setChecked(config()->get("MinimizeOnCopy").toBool()); m_globalAutoTypeKey = static_cast(config()->get("GlobalAutoTypeKey").toInt()); m_globalAutoTypeModifiers = static_cast(config()->get("GlobalAutoTypeModifiers").toInt()); @@ -78,6 +79,7 @@ void SettingsWidget::saveSettings() config()->set("ModifiedOnExpandedStateChanges", m_generalUi->modifiedExpandedChangedCheckBox->isChecked()); config()->set("AutoSaveAfterEveryChange", m_generalUi->autoSaveAfterEveryChangeCheckBox->isChecked()); config()->set("AutoSaveOnExit", m_generalUi->autoSaveOnExitCheckBox->isChecked()); + config()->set("MinimizeOnCopy", m_generalUi->minimizeOnCopyCheckBox->isChecked()); config()->set("GlobalAutoTypeKey", m_generalUi->autoTypeShortcutWidget->key()); config()->set("GlobalAutoTypeModifiers", static_cast(m_generalUi->autoTypeShortcutWidget->modifiers())); config()->set("security/clearclipboard", m_secUi->clearClipboardCheckBox->isChecked()); diff --git a/src/gui/SettingsWidgetGeneral.ui b/src/gui/SettingsWidgetGeneral.ui index 546674f39..79acad88b 100644 --- a/src/gui/SettingsWidgetGeneral.ui +++ b/src/gui/SettingsWidgetGeneral.ui @@ -7,7 +7,7 @@ 0 0 456 - 146 + 185 @@ -45,14 +45,14 @@ - + Global Auto-Type shortcut - + @@ -62,6 +62,13 @@ + + + + Minimize when copying to clipboard + + +