Popups: Fix BeginPopupContextVoid() when clicking over the area made unavailable by a modal. (#1636)
diff --git a/docs/CHANGELOG.txt b/docs/CHANGELOG.txt
index ad07825..47995a8 100644
--- a/docs/CHANGELOG.txt
+++ b/docs/CHANGELOG.txt
@@ -54,6 +54,7 @@
   Set to an intermediary value to toggle behavior based on width (same as Firefox).
 - Popups: Fix an edge case where programatically closing a popup while clicking on its empty space
   would attempt to focus it and close other popups. (#2880)
+- Popups: Fix BeginPopupContextVoid() when clicking over the area made unavailable by a modal. (#1636)
 - Fix GetGlyphRangesKorean() end-range to end at 0xD7A3 (instead of 0xD79D). (#348, #3217) [@marukrap]
 - Metrics: Added a "Settings" section with some details about persistent ini settings.
 - Nav, Menus: Fix vertical wrap-around in menus or popups created with multiple appending calls to
diff --git a/imgui.cpp b/imgui.cpp
index 7358b22..496e71b 100644
--- a/imgui.cpp
+++ b/imgui.cpp
@@ -7924,7 +7924,8 @@
         str_id = "void_context";
     ImGuiID id = window->GetID(str_id);
     if (IsMouseReleased(mouse_button) && !IsWindowHovered(ImGuiHoveredFlags_AnyWindow))
-        OpenPopupEx(id);
+        if (GetTopMostPopupModal() == NULL)
+            OpenPopupEx(id);
     return BeginPopupEx(id, ImGuiWindowFlags_AlwaysAutoResize|ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoSavedSettings);
 }