mirror of
https://github.com/Drezil/imgui.git
synced 2025-07-07 13:35:49 +02:00
ImDrawList: Automatically calling ChannelsMerge() if not done after a split.
Ties fixing f422e78 in docking: iterating root windows was incorrect. Will be faster to lazily merge in RenderDimmedBackground() rather than iterate all.
This commit is contained in:
@ -4812,6 +4812,8 @@ static void AddWindowToDrawData(ImGuiWindow* window, int layer)
|
||||
ImGuiContext& g = *GImGui;
|
||||
ImGuiViewportP* viewport = g.Viewports[0];
|
||||
g.IO.MetricsRenderWindows++;
|
||||
if (window->DrawList->_Splitter._Count > 1)
|
||||
window->DrawList->ChannelsMerge(); // Merge if user forgot to merge back. Also required in Docking branch for ImGuiWindowFlags_DockNodeHost windows.
|
||||
ImGui::AddDrawListToDrawDataEx(&viewport->DrawDataP, viewport->DrawDataBuilder.Layers[layer], window->DrawList);
|
||||
for (ImGuiWindow* child : window->DC.ChildWindows)
|
||||
if (IsWindowActiveAndVisible(child)) // Clipped children may have been marked not active
|
||||
|
Reference in New Issue
Block a user