Fix chatline caching on resize
[quassel.git] / src / qtui / systemtray.cpp
index afa7964..03d9629 100644 (file)
@@ -38,6 +38,7 @@ SystemTray::SystemTray(QWidget *parent)
 : QObject(parent),
   _mode(Invalid),
   _state(Passive),
+  _shouldBeVisible(true),
   _passiveIcon(DesktopIcon("quassel_inactive")),
   _activeIcon(DesktopIcon("quassel")),
   _needsAttentionIcon(DesktopIcon("quassel_message")),
@@ -81,6 +82,9 @@ void SystemTray::init() {
   _trayMenu->addAction(coll->action("Quit"));
 
   connect(_trayMenu, SIGNAL(aboutToShow()), SLOT(trayMenuAboutToShow()));
+
+  NotificationSettings notificationSettings;
+  notificationSettings.initAndNotify("Systray/Animate", this, SLOT(enableAnimationChanged(QVariant)), true);
 }
 
 void SystemTray::trayMenuAboutToShow() {
@@ -135,7 +139,7 @@ void SystemTray::setAlert(bool alerted) {
 }
 
 void SystemTray::setVisible(bool visible) {
-  Q_UNUSED(visible)
+  _shouldBeVisible = visible;
 }
 
 void SystemTray::setToolTip(const QString &title, const QString &subtitle) {
@@ -159,3 +163,8 @@ void SystemTray::activate(SystemTray::ActivationReason reason) {
 void SystemTray::minimizeRestore() {
   GraphicalUi::toggleMainWidget();
 }
+
+void SystemTray::enableAnimationChanged(const QVariant &v) {
+  _animationEnabled = v.toBool();
+  emit animationEnabledChanged(v.toBool());
+}