diff --git a/main/gui/source/init/tasks.cpp b/main/gui/source/init/tasks.cpp index 497abeed2..293f97072 100644 --- a/main/gui/source/init/tasks.cpp +++ b/main/gui/source/init/tasks.cpp @@ -86,6 +86,7 @@ namespace hex::init { ImHexApi::System::getAdditionalFolderPaths().clear(); ImHexApi::System::getCustomFontPath().clear(); ImHexApi::Messaging::impl::getHandlers().clear(); + ImHexApi::Fonts::impl::getFonts().clear(); ContentRegistry::Settings::impl::getSettings().clear(); ContentRegistry::Settings::impl::getSettingsData().clear(); diff --git a/main/gui/source/window/window.cpp b/main/gui/source/window/window.cpp index adae10f2b..debbcaec7 100644 --- a/main/gui/source/window/window.cpp +++ b/main/gui/source/window/window.cpp @@ -1162,9 +1162,6 @@ namespace hex { io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; } - for (auto &entry : fonts->ConfigData) - io.Fonts->ConfigData.push_back(entry); - io.ConfigViewportsNoTaskBarIcon = false; ImNodes::PushAttributeFlag(ImNodesAttributeFlags_EnableLinkDetachWithDragClick); diff --git a/plugins/builtin/source/content/init_tasks.cpp b/plugins/builtin/source/content/init_tasks.cpp index 22693ca9b..9f8b955c8 100644 --- a/plugins/builtin/source/content/init_tasks.cpp +++ b/plugins/builtin/source/content/init_tasks.cpp @@ -13,10 +13,6 @@ #include #include -#include -#include -#include - namespace hex::plugin::builtin { namespace { @@ -107,13 +103,13 @@ namespace hex::plugin::builtin { } bool configureUIScale() { - int interfaceScaleSetting = ContentRegistry::Settings::read("hex.builtin.setting.interface", "hex.builtin.setting.interface.scaling", 0.0F).get() * 10; + int interfaceScaleSetting = int(ContentRegistry::Settings::read("hex.builtin.setting.interface", "hex.builtin.setting.interface.scaling", 0.0F).get() * 10.0F); float interfaceScaling; if (interfaceScaleSetting == 0) interfaceScaling = ImHexApi::System::getNativeScale(); else - interfaceScaling = interfaceScaleSetting / 10.0F; + interfaceScaling = int(interfaceScaleSetting / 10.0F); ImHexApi::System::impl::setGlobalScale(interfaceScaling); @@ -153,7 +149,7 @@ namespace hex::plugin::builtin { // If a custom font has been loaded now, also load the font size float fontSize = defaultFontSize; if (!fontFile.empty()) { - fontSize = ContentRegistry::Settings::read("hex.builtin.setting.font", "hex.builtin.setting.font.font_size", 13).get() * ImHexApi::System::getGlobalScale(); + fontSize = float(ContentRegistry::Settings::read("hex.builtin.setting.font", "hex.builtin.setting.font.font_size", 13).get()) * ImHexApi::System::getGlobalScale(); } ImHexApi::System::impl::setFontSize(fontSize); @@ -174,6 +170,7 @@ namespace hex::plugin::builtin { // Configure font glyph ranges that should be loaded from the default font and unifont static ImVector defaultGlyphRanges; + defaultGlyphRanges = { }; { ImFontGlyphRangesBuilder glyphRangesBuilder; @@ -250,7 +247,7 @@ namespace hex::plugin::builtin { std::strncpy(cfg.Name, font.name.c_str(), sizeof(cfg.Name)); cfg.GlyphOffset = { font.offset.x, font.offset.y }; - fonts->AddFontFromMemoryTTF(font.fontData.data(), font.fontData.size(), 0, &cfg, ranges.back().Data); + fonts->AddFontFromMemoryTTF(font.fontData.data(), int(font.fontData.size()), 0, &cfg, ranges.back().Data); } // Try to build the font atlas