From: Marcus Eggenberger Date: Tue, 20 Jan 2009 23:33:08 +0000 (+0100) Subject: maybe clicking the tray icon toggles minimize to tray again. maybe it won't. maybe... X-Git-Tag: 0.4.0~186 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=4bff244f658ebb38e435d0f65fc49a9c73e54c4d maybe clicking the tray icon toggles minimize to tray again. maybe it won't. maybe it crashes quassel right on start. I didn't test it, as I don't want to mess up my settings. (meaning: it compiled but I didn't even started quassel afterwards) --- diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index 4c39b122..cb33a01b 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -694,7 +694,7 @@ void MainWin::closeEvent(QCloseEvent *event) { void MainWin::systrayActivated(QSystemTrayIcon::ActivationReason activationReason) { if(activationReason == QSystemTrayIcon::Trigger) { - restoreFromTray(); + toggleMinimizedToTray(); } } @@ -709,10 +709,15 @@ void MainWin::hideToTray() { systemTrayIcon()->show(); } -void MainWin::restoreFromTray() { - setWindowState(windowState() & ~Qt::WindowMinimized | Qt::WindowActive); - show(); - raise(); +void MainWin::toggleMinimizedToTray() { + if(windowState() & Qt::WindowMinimized) { + // restore + setWindowState(windowState() & ~Qt::WindowMinimized | Qt::WindowActive); + show(); + raise(); + } else { + setWindowState(windowState() & ~Qt::WindowActive | Qt::WindowMinimized); + } } void MainWin::messagesInserted(const QModelIndex &parent, int start, int end) { diff --git a/src/qtui/mainwin.h b/src/qtui/mainwin.h index 59c0e2c2..682b37b7 100644 --- a/src/qtui/mainwin.h +++ b/src/qtui/mainwin.h @@ -150,7 +150,7 @@ class MainWin void updateIcon(); void hideToTray(); - void restoreFromTray(); + void toggleMinimizedToTray(); void enableMenus(); QSystemTrayIcon *_trayIcon;