Improve system tray icon click behaviour. Thanks haakonn.
Fixes issue #335 Looks good, thanks!
This commit is contained in:
parent
0ef6a2dc88
commit
d921b7e4e7
|
@ -611,12 +611,21 @@ void MainWindow::TrayClicked(QSystemTrayIcon::ActivationReason reason) {
|
||||||
switch (reason) {
|
switch (reason) {
|
||||||
case QSystemTrayIcon::DoubleClick:
|
case QSystemTrayIcon::DoubleClick:
|
||||||
case QSystemTrayIcon::Trigger:
|
case QSystemTrayIcon::Trigger:
|
||||||
if(isMinimized()) {
|
if (isActiveWindow()) {
|
||||||
|
hide();
|
||||||
|
setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive);
|
||||||
|
SetHiddenInTray(true);
|
||||||
|
} else if (settings_.value("hidden").toBool()) {
|
||||||
|
show();
|
||||||
|
SetHiddenInTray(false);
|
||||||
|
} else if (isMinimized()) {
|
||||||
hide();
|
hide();
|
||||||
setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive);
|
setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive);
|
||||||
SetHiddenInTray(false);
|
SetHiddenInTray(false);
|
||||||
} else {
|
} else {
|
||||||
SetHiddenInTray(isVisible());
|
// Window is not hidden but does not have focus; bring it to front.
|
||||||
|
activateWindow();
|
||||||
|
raise();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue