@@ -81,6 +81,8 @@ int main(int argc, char *argv[])
8181
8282 Application app (argc, argv);
8383
84+ ConfigMgr::initAppPrefixPath ();
85+
8486 QAccessible::installFactory (&FakeAccessible::accessibleFactory);
8587
8688 {
@@ -208,54 +210,47 @@ void loadTranslators(QApplication &p_app)
208210 QLocale locale;
209211 qInfo () << " locale:" << locale.name ();
210212
211- QString translationsDir;
212- auto possible_dirs = QStandardPaths::locateAll (QStandardPaths::AppDataLocation,
213- " translations" , QStandardPaths::LocateDirectory);
214- for (const auto & dir_path : possible_dirs) {
215- if (QDir (dir_path).exists (" vnote_zh_CN.qm" )) {
216- translationsDir = dir_path;
217- break ;
218- }
219- }
220-
221- if (translationsDir.isEmpty ()) {
213+ const auto translationsPath = QDir (" app:translations" ).absolutePath ();
214+ qInfo () << " translations dir: " << translationsPath;
215+ if (translationsPath.isEmpty ()) {
222216 qWarning () << " failed to locate translations directory" ;
217+ return ;
223218 }
224219
225220 // For QTextEdit/QTextBrowser and other basic widgets.
226221 QScopedPointer<QTranslator> qtbaseTranslator (new QTranslator (&p_app));
227- if (qtbaseTranslator->load (locale, " qtbase" , " _" , translationsDir )) {
222+ if (qtbaseTranslator->load (locale, " qtbase" , " _" , translationsPath )) {
228223 p_app.installTranslator (qtbaseTranslator.take ());
229224 }
230225
231226 // qt_zh_CN.ts does not cover the real QDialogButtonBox which uses QPlatformTheme.
232227 QScopedPointer<QTranslator> dialogButtonBoxTranslator (new QTranslator (&p_app));
233- if (dialogButtonBoxTranslator->load (locale, " qdialogbuttonbox" , " _" , translationsDir )) {
228+ if (dialogButtonBoxTranslator->load (locale, " qdialogbuttonbox" , " _" , translationsPath )) {
234229 p_app.installTranslator (dialogButtonBoxTranslator.take ());
235230 }
236231
237232 QScopedPointer<QTranslator> webengineTranslator (new QTranslator (&p_app));
238- if (webengineTranslator->load (locale, " qwebengine" , " _" , translationsDir )) {
233+ if (webengineTranslator->load (locale, " qwebengine" , " _" , translationsPath )) {
239234 p_app.installTranslator (webengineTranslator.take ());
240235 }
241236
242237 QScopedPointer<QTranslator> qtTranslator (new QTranslator (&p_app));
243- if (qtTranslator->load (locale, " qtv" , " _" , translationsDir )) {
238+ if (qtTranslator->load (locale, " qtv" , " _" , translationsPath )) {
244239 p_app.installTranslator (qtTranslator.take ());
245240 }
246241
247242 QScopedPointer<QTranslator> qtEnvTranslator (new QTranslator (&p_app));
248- if (qtEnvTranslator->load (locale, " qt" , " _" , translationsDir )) {
243+ if (qtEnvTranslator->load (locale, " qt" , " _" , translationsPath )) {
249244 p_app.installTranslator (qtEnvTranslator.take ());
250245 }
251246
252247 QScopedPointer<QTranslator> vnoteTranslator (new QTranslator (&p_app));
253- if (vnoteTranslator->load (locale, " vnote" , " _" , translationsDir )) {
248+ if (vnoteTranslator->load (locale, " vnote" , " _" , translationsPath )) {
254249 p_app.installTranslator (vnoteTranslator.take ());
255250 }
256251
257252 QScopedPointer<QTranslator> vtexteditTranslator (new QTranslator (&p_app));
258- if (vtexteditTranslator->load (locale, " vtextedit" , " _" , translationsDir )) {
253+ if (vtexteditTranslator->load (locale, " vtextedit" , " _" , translationsPath )) {
259254 p_app.installTranslator (vtexteditTranslator.take ());
260255 }
261256}
0 commit comments