aboutsummaryrefslogtreecommitdiff
path: root/src/mainwindow.cpp
diff options
context:
space:
mode:
authorLibravatar Keshav Bhatt <keshavnrj@gmail.com>2022-03-30 18:36:05 +0530
committerLibravatar Keshav Bhatt <keshavnrj@gmail.com>2022-03-30 18:36:05 +0530
commite800208f2a600bb77c04f012cbbc7ded506fd663 (patch)
tree2007014e90571501104130fe298b810e3fd444b6 /src/mainwindow.cpp
parentd06a4abb4755d0e97e8ef03688bc878117d90b4e (diff)
downloadwhatsie-e800208f2a600bb77c04f012cbbc7ded506fd663.tar.gz
whatsie-e800208f2a600bb77c04f012cbbc7ded506fd663.zip
fix: notification popup click behavior
Diffstat (limited to 'src/mainwindow.cpp')
-rw-r--r--src/mainwindow.cpp28
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 {