diff --git a/plugins/builtin/include/content/views/view_provider_settings.hpp b/plugins/builtin/include/content/views/view_provider_settings.hpp index dfbf3a097..39aa6bad3 100644 --- a/plugins/builtin/include/content/views/view_provider_settings.hpp +++ b/plugins/builtin/include/content/views/view_provider_settings.hpp @@ -17,6 +17,7 @@ namespace hex::plugin::builtin { ImVec2 getMinSize() const override { return { -1, -1 }; } ImVec2 getMaxSize() const override { return this->getMinSize(); } + ImGuiWindowFlags getWindowFlags() const override { return ImGuiWindowFlags_AlwaysAutoResize; } bool hasCloseButton() const override { return false; diff --git a/plugins/builtin/source/content/providers/disk_provider.cpp b/plugins/builtin/source/content/providers/disk_provider.cpp index e20c011fb..5a9687397 100644 --- a/plugins/builtin/source/content/providers/disk_provider.cpp +++ b/plugins/builtin/source/content/providers/disk_provider.cpp @@ -463,16 +463,16 @@ namespace hex::plugin::builtin { ImGui::PushItemWidth(300_scaled); if (ImGui::BeginListBox("hex.builtin.provider.disk.selected_disk"_lang)) { - ImGui::PushID(1); for (const auto &[path, friendlyName] : m_availableDrives) { + ImGui::PushID(path.c_str()); if (ImGui::Selectable(friendlyName.c_str(), m_path == path)) { m_path = path; m_friendlyName = friendlyName; } + ImGui::PopID(); ImGuiExt::InfoTooltip(path.c_str()); } - ImGui::PopID(); ImGui::EndListBox(); } diff --git a/plugins/builtin/source/content/views/view_provider_settings.cpp b/plugins/builtin/source/content/views/view_provider_settings.cpp index d2e0fb12a..ea4665987 100644 --- a/plugins/builtin/source/content/views/view_provider_settings.cpp +++ b/plugins/builtin/source/content/views/view_provider_settings.cpp @@ -9,7 +9,7 @@ namespace hex::plugin::builtin { ViewProviderSettings::ViewProviderSettings() : View::Modal("hex.builtin.view.provider_settings.name") { - EventProviderOpened::subscribe(this, [this](const hex::prv::Provider *provider) { + EventProviderCreated::subscribe(this, [this](const hex::prv::Provider *provider) { if (provider->hasLoadInterface() && !provider->shouldSkipLoadInterface()) this->getWindowOpenState() = true; }); @@ -28,7 +28,7 @@ namespace hex::plugin::builtin { } ViewProviderSettings::~ViewProviderSettings() { - EventProviderOpened::unsubscribe(this); + EventProviderCreated::unsubscribe(this); } void ViewProviderSettings::drawContent() {