diff options
| author | Wladimir J. van der Laan <[email protected]> | 2019-01-09 19:16:17 +0100 |
|---|---|---|
| committer | Wladimir J. van der Laan <[email protected]> | 2019-01-09 19:44:43 +0100 |
| commit | 0ed279cb4e4198e20a552c279c09134626bbb0bd (patch) | |
| tree | 0cf82096ab7051d32417f8255510220e8b59e1fa /src | |
| parent | Merge #15128: docs: Fix download link in doc/README.md (diff) | |
| parent | Fix start with the `-min` option (diff) | |
| download | discoin-0ed279cb4e4198e20a552c279c09134626bbb0bd.tar.xz discoin-0ed279cb4e4198e20a552c279c09134626bbb0bd.zip | |
Merge #14517: qt: Fix start with the `-min` option
93009618b6d72b6bb253cabc4a5813d7aea18a67 Fix start with the `-min` option (Hennadii Stepanov)
Pull request description:
From IRC:
> 2018-10-17T12:36:38 \<Drakon\> The option to minimize to system tray instead of the taskbar ist available, but doesn't have an effect if it is started with the -min option. If I start it via that option, I have to click on the program symbil on the taskbar and then minimize it again in order to get it minimized to system tray.
> 2018-10-17T12:37:28 \<Drakon\> That's annoying.
> 2018-10-17T13:51:19 \<wumpus\> can you open an issue for that please? https://github.com/bitcoin/bitcoin/issues/new
> 2018-10-17T13:53:24 \<wumpus\> (if there isn't one yet-)
This PR fixes this bug.
Tree-SHA512: c5a5521287b49b13859edc7c6bd1cd07cac14b84740450181dce00bf2781fc3dfc84476794baa16b0e26a2d004164617afdb61f829e629569703c5bcc45e2a4e
Diffstat (limited to 'src')
| -rw-r--r-- | src/qt/bitcoin.cpp | 13 | ||||
| -rw-r--r-- | src/qt/bitcoingui.h | 5 |
2 files changed, 11 insertions, 7 deletions
diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index cf1bc6450..6e08dae3c 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -392,14 +392,13 @@ void BitcoinApplication::initializeResult(bool success) } #endif - // If -min option passed, start window minimized. - if(gArgs.GetBoolArg("-min", false)) - { - window->showMinimized(); - } - else - { + // If -min option passed, start window minimized (iconified) or minimized to tray + if (!gArgs.GetBoolArg("-min", false)) { window->show(); + } else if (clientModel->getOptionsModel()->getMinimizeToTray() && window->hasTrayIcon()) { + // do nothing as the window is managed by the tray icon + } else { + window->showMinimized(); } Q_EMIT splashFinished(); Q_EMIT windowShown(window); diff --git a/src/qt/bitcoingui.h b/src/qt/bitcoingui.h index e6c62d43b..9ca9e4c92 100644 --- a/src/qt/bitcoingui.h +++ b/src/qt/bitcoingui.h @@ -86,6 +86,11 @@ public: #endif // ENABLE_WALLET bool enableWallet = false; + /** Get the tray icon status. + Some systems have not "system tray" or "notification area" available. + */ + bool hasTrayIcon() const { return trayIcon; } + protected: void changeEvent(QEvent *e); void closeEvent(QCloseEvent *event); |