QPointer<MainWin> QtUi::_mainWin = 0;
QList<AbstractNotificationBackend *> QtUi::_notificationBackends;
QList<AbstractNotificationBackend::Notification> QtUi::_notifications;
-QtUiStyle *QtUi::_style = 0;
QtUi::QtUi() : GraphicalUi() {
if(_instance != 0) {
QtUiSettings uiSettings;
Quassel::loadTranslation(uiSettings.value("Locale", QLocale::system()).value<QLocale>());
+ setUiStyle(new QtUiStyle(this));
_mainWin = new MainWin();
- _style = new QtUiStyle;
setMainWidget(_mainWin);
QtUi::~QtUi() {
unregisterAllNotificationBackends();
- delete _style;
delete _mainWin;
}
return _notificationBackends;
}
-uint QtUi::invokeNotification(BufferId bufId, const QString &sender, const QString &text) {
+uint QtUi::invokeNotification(BufferId bufId, AbstractNotificationBackend::NotificationType type, const QString &sender, const QString &text) {
static int notificationId = 0;
//notificationId++;
- AbstractNotificationBackend::Notification notification(++notificationId, bufId, sender, text);
+ AbstractNotificationBackend::Notification notification(++notificationId, bufId, type, sender, text);
_notifications.append(notification);
foreach(AbstractNotificationBackend *backend, _notificationBackends)
backend->notify(notification);
BufferId bufId = (*i).bufferId;
if(bufId.isValid())
Client::bufferModel()->switchToBuffer(bufId);
+ foreach(AbstractNotificationBackend *backend, _notificationBackends)
+ backend->close(notificationId);
_notifications.erase(i);
break;
} else ++i;
}
}
-#ifdef Q_WS_X11
- // Bypass focus stealing prevention
- QX11Info::setAppUserTime(QX11Info::appTime());
-#endif
-
- if(_mainWin->windowState() & Qt::WindowMinimized) {
- // restore
- _mainWin->setWindowState((_mainWin->windowState() & ~Qt::WindowMinimized) | Qt::WindowActive);
- _mainWin->show();
- }
- _mainWin->raise();
- _mainWin->activateWindow();
+ mainWindow()->forceActivated();
}