From cab5a2223ba8fc0571663216f48e9295093fc503 Mon Sep 17 00:00:00 2001
From: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>
Date: Tue, 1 Feb 2022 17:07:16 -0500
Subject: [PATCH] mainapplication: fix retranslate connection timing

Connect after initializing the settings manager pointer and
remove a slot by relaying the retranslate signal.

https://git.jami.net/savoirfairelinux/jami-project/-/issues/1342
Change-Id: I446cfb15500929850a434280dada6785107f9e78
---
 src/mainapplication.cpp | 15 +++++----------
 src/mainapplication.h   |  3 ---
 2 files changed, 5 insertions(+), 13 deletions(-)

diff --git a/src/mainapplication.cpp b/src/mainapplication.cpp
index 099781954..7bced74af 100644
--- a/src/mainapplication.cpp
+++ b/src/mainapplication.cpp
@@ -148,10 +148,6 @@ MainApplication::MainApplication(int& argc, char** argv)
     : QApplication(argc, argv)
 {
     QObject::connect(this, &QApplication::aboutToQuit, [this] { cleanup(); });
-    QObject::connect(settingsManager_.get(),
-                     &AppSettingsManager::retranslate,
-                     this,
-                     &MainApplication::retranslate);
 }
 
 MainApplication::~MainApplication()
@@ -171,6 +167,11 @@ MainApplication::init()
     systemTray_.reset(new SystemTray(settingsManager_.get(), this));
     previewEngine_.reset(new PreviewEngine(this));
 
+    QObject::connect(settingsManager_.get(),
+                     &AppSettingsManager::retranslate,
+                     engine_.get(),
+                     &QQmlApplicationEngine::retranslate);
+
     setWindowIcon(QIcon(":/images/jami.ico"));
 
 #ifdef Q_OS_LINUX
@@ -265,12 +266,6 @@ MainApplication::restoreApp()
     Q_EMIT lrcInstance_->restoreAppRequested();
 }
 
-void
-MainApplication::retranslate()
-{
-    engine_->retranslate();
-}
-
 void
 MainApplication::initLrc(const QString& downloadUrl, ConnectivityMonitor* cm, bool logDaemon)
 {
diff --git a/src/mainapplication.h b/src/mainapplication.h
index 62eb26f1d..9de1b751f 100644
--- a/src/mainapplication.h
+++ b/src/mainapplication.h
@@ -79,9 +79,6 @@ private:
     void initSystray();
     void cleanup();
 
-public Q_SLOTS:
-    void retranslate();
-
 private:
     QScopedPointer<QFile> debugFile_;
     QScopedPointer<QQmlApplicationEngine> engine_;
-- 
GitLab