+void QtUi::useSystemTrayChanged(const QVariant &v) {
+ _useSystemTray = v.toBool();
+ SystemTray *tray = mainWindow()->systemTray();
+ if(_useSystemTray) {
+ if(tray->isSystemTrayAvailable())
+ tray->setVisible(true);
+ } else {
+ if(tray->isSystemTrayAvailable() && mainWindow()->isVisible())
+ tray->setVisible(false);
+ }
+}
+
+bool QtUi::haveSystemTray() {
+ return mainWindow()->systemTray()->isSystemTrayAvailable() && instance()->_useSystemTray;
+}
+
+bool QtUi::isHidingMainWidgetAllowed() const {
+ return haveSystemTray();
+}
+
+void QtUi::minimizeRestore(bool show) {
+ SystemTray *tray = mainWindow()->systemTray();
+ if(show) {
+ if(tray && !_useSystemTray)
+ tray->setVisible(false);
+ } else {
+ if(tray && _useSystemTray)
+ tray->setVisible(true);
+ }
+ GraphicalUi::minimizeRestore(show);
+}
+