aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/qt/bitcoingui.cpp50
-rw-r--r--src/qt/bitcoingui.h6
2 files changed, 25 insertions, 31 deletions
diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp
index 546a39f43d..e15bc6690a 100644
--- a/src/qt/bitcoingui.cpp
+++ b/src/qt/bitcoingui.cpp
@@ -439,28 +439,6 @@ void BitcoinGUI::trayIconActivated(QSystemTrayIcon::ActivationReason reason)
}
#endif
-void BitcoinGUI::toggleHidden()
-{
- // activateWindow() (sometimes) helps with keyboard focus on Windows
- if (isHidden())
- {
- show();
- activateWindow();
- }
- else if (isMinimized())
- {
- showNormal();
- activateWindow();
- }
- else if (GUIUtil::isObscured(this))
- {
- raise();
- activateWindow();
- }
- else
- hide();
-}
-
void BitcoinGUI::optionsClicked()
{
if(!clientModel || !clientModel->getOptionsModel())
@@ -782,9 +760,6 @@ void BitcoinGUI::handleURI(QString strURI)
gotoSendCoinsPage();
sendCoinsPage->handleURI(strURI);
- if(!isActiveWindow())
- activateWindow();
-
showNormalIfMinimized();
}
@@ -867,10 +842,29 @@ void BitcoinGUI::unlockWallet()
}
}
-void BitcoinGUI::showNormalIfMinimized()
+void BitcoinGUI::showNormalIfMinimized(bool fToggleHidden)
{
- if(!isVisible()) // Show, if hidden
+ // activateWindow() (sometimes) helps with keyboard focus on Windows
+ if (isHidden())
+ {
show();
- if(isMinimized()) // Unminimize, if minimized
+ activateWindow();
+ }
+ else if (isMinimized())
+ {
showNormal();
+ activateWindow();
+ }
+ else if (GUIUtil::isObscured(this))
+ {
+ raise();
+ activateWindow();
+ }
+ else if(fToggleHidden)
+ hide();
+}
+
+void BitcoinGUI::toggleHidden()
+{
+ showNormalIfMinimized(true);
}
diff --git a/src/qt/bitcoingui.h b/src/qt/bitcoingui.h
index 8a7f6e541b..3c82cbc968 100644
--- a/src/qt/bitcoingui.h
+++ b/src/qt/bitcoingui.h
@@ -169,9 +169,9 @@ private slots:
/** Ask for pass phrase to unlock wallet temporarily */
void unlockWallet();
- /** Show window if hidden, unminimize when minimized */
- void showNormalIfMinimized();
- /** Hide window if visible, show if hidden */
+ /** Show window if hidden, unminimize when minimized, rise when obscured or show if hidden and fToggleHidden is true */
+ void showNormalIfMinimized(bool fToggleHidden = false);
+ /** simply calls showNormalIfMinimized(true) for use in SLOT() macro */
void toggleHidden();
};