diff options
author | 2022-03-30 18:36:05 +0530 | |
---|---|---|
committer | 2022-03-30 18:36:05 +0530 | |
commit | e800208f2a600bb77c04f012cbbc7ded506fd663 (patch) | |
tree | 2007014e90571501104130fe298b810e3fd444b6 /src/mainwindow.cpp | |
parent | d06a4abb4755d0e97e8ef03688bc878117d90b4e (diff) | |
download | whatsie-e800208f2a600bb77c04f012cbbc7ded506fd663.tar.gz whatsie-e800208f2a600bb77c04f012cbbc7ded506fd663.zip |
fix: notification popup click behavior
Diffstat (limited to 'src/mainwindow.cpp')
-rw-r--r-- | src/mainwindow.cpp | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 5a29c60..4433068 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -494,12 +494,10 @@ void MainWindow::notify(QString title, QString message) { } else { auto popup = new NotificationPopup(webEngine); connect(popup, &NotificationPopup::notification_clicked, popup, [=]() { - if (windowState() == Qt::WindowMinimized || - windowState() != Qt::WindowActive) { - activateWindow(); - raise(); - showNormal(); - } + if (windowState().testFlag(Qt::WindowMinimized) || + !windowState().testFlag(Qt::WindowActive)) { + setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive); + } }); popup->style()->polish(qApp); popup->setMinimumWidth(300); @@ -812,11 +810,9 @@ void MainWindow::setNotificationPresenter(QWebEngineProfile *profile) { auto popup = new NotificationPopup(webEngine); popup->setObjectName("engineNotifier"); connect(popup, &NotificationPopup::notification_clicked, popup, [=]() { - if (windowState() == Qt::WindowMinimized || - windowState() != Qt::WindowActive) { - activateWindow(); - raise(); - showNormal(); + if (windowState().testFlag(Qt::WindowMinimized) || + !windowState().testFlag(Qt::WindowActive)) { + setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive); } }); @@ -834,12 +830,10 @@ void MainWindow::setNotificationPresenter(QWebEngineProfile *profile) { settings.value("notificationTimeOut", 9000).toInt()); trayIcon->disconnect(trayIcon, SIGNAL(messageClicked())); connect(trayIcon, &QSystemTrayIcon::messageClicked, trayIcon, [=]() { - if (windowState() == Qt::WindowMinimized || - windowState() != Qt::WindowActive) { - activateWindow(); - raise(); - showNormal(); - } + if (windowState().testFlag(Qt::WindowMinimized) || + !windowState().testFlag(Qt::WindowActive)) { + setWindowState((windowState() & ~Qt::WindowMinimized) | Qt::WindowActive); + } }); } else { |