/***************************************************************************
- * Copyright (C) 2005-2018 by the Quassel Project *
+ * Copyright (C) 2005-2019 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
Q_OBJECT
public:
- ~QtUi();
+ QtUi();
+ ~QtUi() override;
MessageModel *createMessageModel(QObject *parent) override;
AbstractMessageProcessor *createMessageProcessor(QObject *parent) override;
void useSystemTrayChanged(const QVariant &);
private:
- QtUi();
-
/**
* Sets up icon theme handling.
*/
void setupIconTheme();
private:
- static MainWin *_mainWin;
static QList<AbstractNotificationBackend *> _notificationBackends;
static QList<AbstractNotificationBackend::Notification> _notifications;
+ std::unique_ptr<MainWin> _mainWin;
+
QString _systemIconTheme;
#if QT_VERSION >= 0x050000
};
QtUiStyle *QtUi::style() { return qobject_cast<QtUiStyle *>(uiStyle()); }
-MainWin *QtUi::mainWindow() { return _mainWin; }
+MainWin *QtUi::mainWindow() { return instance()->_mainWin.get(); }