mirror of
https://git.jami.net/savoirfairelinux/jami-client-qt.git
synced 2025-09-10 12:03:18 +02:00
mainapplication: only initialize members for primary instances
The running instance may be ephemeral and end up discarded after being checked by InstanceManager. In this case, we shouldn't initialize large components. Gitlab: #654 Change-Id: I30c7dcdba6a56ab3a1a84a9efd3424e266b6f6ce
This commit is contained in:
parent
b2de6b7252
commit
0477376a0c
1 changed files with 8 additions and 5 deletions
|
@ -146,11 +146,6 @@ MainApplication::fileDebug(QFile* debugFile)
|
|||
|
||||
MainApplication::MainApplication(int& argc, char** argv)
|
||||
: QApplication(argc, argv)
|
||||
, engine_(new QQmlApplicationEngine())
|
||||
, connectivityMonitor_(new ConnectivityMonitor(this))
|
||||
, settingsManager_(new AppSettingsManager(this))
|
||||
, systemTray_(new SystemTray(settingsManager_.get(), this))
|
||||
, previewEngine_(new PreviewEngine(this))
|
||||
{
|
||||
QObject::connect(this, &QApplication::aboutToQuit, [this] { cleanup(); });
|
||||
}
|
||||
|
@ -164,6 +159,14 @@ MainApplication::~MainApplication()
|
|||
bool
|
||||
MainApplication::init()
|
||||
{
|
||||
// This 2-phase initialisation prevents ephemeral instances from
|
||||
// performing unnecessary tasks, like initializing the webengine.
|
||||
engine_.reset(new QQmlApplicationEngine(this));
|
||||
connectivityMonitor_.reset(new ConnectivityMonitor(this));
|
||||
settingsManager_.reset(new AppSettingsManager(this));
|
||||
systemTray_.reset(new SystemTray(settingsManager_.get(), this));
|
||||
previewEngine_.reset(new PreviewEngine(this));
|
||||
|
||||
setWindowIcon(QIcon(":/images/jami.ico"));
|
||||
|
||||
#ifdef Q_OS_LINUX
|
||||
|
|
Loading…
Add table
Reference in a new issue