Merge pull request #6730 from Chocobo1/icontray

Fix double click on system tray icon causing program to open and minimize immediately
This commit is contained in:
Mike Tzou 2017-05-13 02:32:37 +08:00 committed by GitHub
commit a2d5d48aff
2 changed files with 14 additions and 8 deletions

View file

@ -953,17 +953,17 @@ void MainWindow::notifyOfUpdate(QString)
}
// Toggle Main window visibility
void MainWindow::toggleVisibility(QSystemTrayIcon::ActivationReason e)
void MainWindow::toggleVisibility(const QSystemTrayIcon::ActivationReason reason)
{
if ((e == QSystemTrayIcon::Trigger) || (e == QSystemTrayIcon::DoubleClick)) {
switch (reason) {
case QSystemTrayIcon::Trigger: {
if (isHidden()) {
if (m_uiLocked) {
// Ask for UI lock password
if (!unlockUI())
return;
}
if (m_uiLocked && !unlockUI()) // Ask for UI lock password
return;
// Make sure the window is not minimized
setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive);
// Then show it
show();
raise();
@ -972,6 +972,12 @@ void MainWindow::toggleVisibility(QSystemTrayIcon::ActivationReason e)
else {
hide();
}
break;
}
default:
break;
}
}

View file

@ -102,7 +102,7 @@ public:
void showNotificationBaloon(QString title, QString msg) const;
private slots:
void toggleVisibility(QSystemTrayIcon::ActivationReason e = QSystemTrayIcon::Trigger);
void toggleVisibility(const QSystemTrayIcon::ActivationReason reason = QSystemTrayIcon::Trigger);
void balloonClicked();
void writeSettings();