diff options
author | saturneric <[email protected]> | 2024-07-31 06:13:26 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-07-31 06:13:26 +0000 |
commit | 081147d65fcb0a20818bbfb43f6ec4f5ddf59581 (patch) | |
tree | f6ec05666acb98da46b4cb0dfc0871225f4ad388 /src/sdk | |
parent | fix: dealing with unknown compiler (diff) | |
download | GpgFrontend-081147d65fcb0a20818bbfb43f6ec4f5ddf59581.tar.gz GpgFrontend-081147d65fcb0a20818bbfb43f6ec4f5ddf59581.zip |
fix: addressing some of the significant deficiencies identified
Diffstat (limited to 'src/sdk')
-rw-r--r-- | src/sdk/GFSDKBasic.cpp | 15 | ||||
-rw-r--r-- | src/sdk/GFSDKBasic.h | 6 |
2 files changed, 11 insertions, 10 deletions
diff --git a/src/sdk/GFSDKBasic.cpp b/src/sdk/GFSDKBasic.cpp index 906f9baf..32076cd0 100644 --- a/src/sdk/GFSDKBasic.cpp +++ b/src/sdk/GFSDKBasic.cpp @@ -32,7 +32,7 @@ #include "core/function/gpg/GpgCommandExecutor.h" #include "core/utils/BuildInfoUtils.h" #include "sdk/private/CommonUtils.h" -#include "ui/GpgFrontendUIInit.h" +#include "ui/UIModuleManager.h" auto GFAllocateMemory(uint32_t size) -> void* { return GpgFrontend::SecureMemoryAllocator::Allocate(size); @@ -110,11 +110,10 @@ auto GFModuleStrDup(const char* src) -> char* { auto GFAppActiveLocale() -> char* { return GFStrDup(QLocale().name()); } -auto GFAppRegisterTranslator(char* data, int size) -> int { - auto b = QByteArray(data, size); - QMetaObject::invokeMethod(QApplication::instance()->thread(), [b]() { - GpgFrontend::UI::InstallTranslatorFromQMData(b); - }); - GFFreeMemory(data); - return 0; +auto GFAppRegisterTranslatorReader(const char* id, + GFTranslatorDataReader reader) -> int { + return GpgFrontend::UI::UIModuleManager::GetInstance() + .RegisterTranslatorDataReader(GFUnStrDup(id), reader) + ? 0 + : -1; } diff --git a/src/sdk/GFSDKBasic.h b/src/sdk/GFSDKBasic.h index aba4d2e0..f6c80287 100644 --- a/src/sdk/GFSDKBasic.h +++ b/src/sdk/GFSDKBasic.h @@ -48,6 +48,8 @@ using GFCommandExecuteContext = struct { void* data; }; +using GFTranslatorDataReader = int (*)(const char* locale, char** data); + /** * @brief * @@ -129,6 +131,6 @@ auto GPGFRONTEND_MODULE_SDK_EXPORT GFAppActiveLocale() -> char*; * @param size * @return auto */ -auto GPGFRONTEND_MODULE_SDK_EXPORT GFAppRegisterTranslator(char* data, - int size) -> int; +auto GPGFRONTEND_MODULE_SDK_EXPORT +GFAppRegisterTranslatorReader(const char* id, GFTranslatorDataReader reader) -> int; }
\ No newline at end of file |