Skip to content

Commit

Permalink
main: set llmodel search path before initializing MySettings (#2677)
Browse files Browse the repository at this point in the history
This fixes a regression in PR #2659.

Signed-off-by: Jared Van Bortel <[email protected]>
  • Loading branch information
cebtenzzre authored Jul 16, 2024
1 parent da6e527 commit f0c754b
Showing 1 changed file with 13 additions and 12 deletions.
25 changes: 13 additions & 12 deletions gpt4all-chat/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,7 @@ int main(int argc, char *argv[])

QGuiApplication app(argc, argv);

// Set the local and language translation before the qml engine has even been started. This will
// use the default system locale unless the user has explicitly set it to use a different one.
MySettings::globalInstance()->setLanguageAndLocale();

QQmlApplicationEngine engine;

// Add a connection here from MySettings::languageAndLocaleChanged signal to a lambda slot where I can call
// engine.uiLanguage property
QObject::connect(MySettings::globalInstance(), &MySettings::languageAndLocaleChanged, [&engine]() {
engine.setUiLanguage(MySettings::globalInstance()->languageAndLocale());
});

// set search path before constructing the MySettings instance, which relies on this
QString llmodelSearchPaths = QCoreApplication::applicationDirPath();
const QString libDir = QCoreApplication::applicationDirPath() + "/../lib/";
if (LLM::directoryExists(libDir))
Expand All @@ -59,6 +48,18 @@ int main(int argc, char *argv[])
#endif
LLModel::Implementation::setImplementationsSearchPath(llmodelSearchPaths.toStdString());

// Set the local and language translation before the qml engine has even been started. This will
// use the default system locale unless the user has explicitly set it to use a different one.
MySettings::globalInstance()->setLanguageAndLocale();

QQmlApplicationEngine engine;

// Add a connection here from MySettings::languageAndLocaleChanged signal to a lambda slot where I can call
// engine.uiLanguage property
QObject::connect(MySettings::globalInstance(), &MySettings::languageAndLocaleChanged, [&engine]() {
engine.setUiLanguage(MySettings::globalInstance()->languageAndLocale());
});

qmlRegisterSingletonInstance("mysettings", 1, 0, "MySettings", MySettings::globalInstance());
qmlRegisterSingletonInstance("modellist", 1, 0, "ModelList", ModelList::globalInstance());
qmlRegisterSingletonInstance("chatlistmodel", 1, 0, "ChatListModel", ChatListModel::globalInstance());
Expand Down

0 comments on commit f0c754b

Please sign in to comment.