diff --git a/plugins/builtin/source/content/ui_items.cpp b/plugins/builtin/source/content/ui_items.cpp index 0394186b9..7bd7fa9e8 100644 --- a/plugins/builtin/source/content/ui_items.cpp +++ b/plugins/builtin/source/content/ui_items.cpp @@ -182,14 +182,18 @@ namespace hex::plugin::builtin { }); EventFrameBegin::subscribe([] { - if (ImGui::BeginPopup("ProviderMenu")) { - if (rightClickedProvider != nullptr && !rightClickedProvider->getMenuEntries().empty()) + if (rightClickedProvider != nullptr && !rightClickedProvider->getMenuEntries().empty()) { + if (ImGui::BeginPopup("ProviderMenu")) { drawProviderContextMenu(rightClickedProvider); - - ImGui::EndPopup(); + ImGui::EndPopup(); + } } }); + EventProviderChanged::subscribe([](auto, auto){ + rightClickedProvider = nullptr; + }); + ContentRegistry::Interface::addToolbarItem([] { auto provider = ImHexApi::Provider::get(); bool providerValid = provider != nullptr;