CVS commit by psn: Make 'Stay in the system tray all the time' depend on if the tray icon is shown or not M +8 -4 konversationmainwindow.cpp 1.166 M +1 -5 prefspagebehaviour.cpp 1.14 M +4 -2 trayicon.cpp 1.4 --- kdeextragear-2/konversation/konversation/konversationmainwindow.cpp #1.165:1.166 @@ -1319,8 +1319,4 @@ void KonversationMainWindow::updateTrayI { tray->show(); - if(KonversationApplication::preferences.getSystrayOnly()) - KWin::setState(winId(), NET::SkipTaskbar); - else - KWin::clearState(winId(), NET::SkipTaskbar); } else @@ -1328,4 +1324,12 @@ void KonversationMainWindow::updateTrayI tray->setNotificationEnabled(KonversationApplication::preferences.getTrayNotify()); + + if(KonversationApplication::preferences.getShowTrayIcon() && + KonversationApplication::preferences.getSystrayOnly()) + { + KWin::setState(winId(), NET::SkipTaskbar); + } else { + KWin::clearState(winId(), NET::SkipTaskbar); + } } --- kdeextragear-2/konversation/konversation/prefspagebehaviour.cpp #1.13:1.14 @@ -175,9 +175,5 @@ void PrefsPageBehaviour::applyPreference { preferences->setShowTrayIcon(trayIconCheck->isChecked()); - - if (trayIconCheck->isChecked()) preferences->setSystrayOnly(trayOnlyCheck->isChecked()); - else - preferences->setSystrayOnly(false); preferences->setRawLog(rawLogCheck->isChecked()); --- kdeextragear-2/konversation/konversation/trayicon.cpp #1.3:1.4 @@ -35,5 +35,6 @@ TrayIcon::TrayIcon(QWidget* parent) : KS m_blinkTimer = new QTimer(this); connect(m_blinkTimer, SIGNAL(timeout()), SLOT(blinkTimeout())); - if(KonversationApplication::preferences.getSystrayOnly()) + if(KonversationApplication::preferences.getShowTrayIcon() && + KonversationApplication::preferences.getSystrayOnly()) KWin::setState(m_parent->winId(), NET::SkipTaskbar); } @@ -94,5 +95,6 @@ void TrayIcon::removeServer(Server* serv void TrayIcon::mousePressEvent(QMouseEvent *e) { - if(KonversationApplication::preferences.getSystrayOnly()) + if(KonversationApplication::preferences.getShowTrayIcon() && + KonversationApplication::preferences.getSystrayOnly()) KWin::setState(m_parent->winId(), NET::SkipTaskbar); KSystemTray::mousePressEvent(e);