mirror of
https://github.com/ocornut/imgui.git
synced 2024-11-16 12:03:27 +01:00
Viewports: Don't set ImGuiViewportFlags_NoRendererClear when ImGuiWindowFlags_NoBackground is set. (#3213)
This commit is contained in:
parent
1e7672acf4
commit
6636cb9f2f
@ -6236,7 +6236,8 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
|
|||||||
UpdateViewportPlatformMonitor(window->Viewport);
|
UpdateViewportPlatformMonitor(window->Viewport);
|
||||||
|
|
||||||
// Update common viewport flags
|
// Update common viewport flags
|
||||||
ImGuiViewportFlags viewport_flags = (window->Viewport->Flags) & ~(ImGuiViewportFlags_TopMost | ImGuiViewportFlags_NoTaskBarIcon | ImGuiViewportFlags_NoDecoration);
|
const ImGuiViewportFlags viewport_flags_to_clear = ImGuiViewportFlags_TopMost | ImGuiViewportFlags_NoTaskBarIcon | ImGuiViewportFlags_NoDecoration | ImGuiViewportFlags_NoRendererClear;
|
||||||
|
ImGuiViewportFlags viewport_flags = window->Viewport->Flags & ~viewport_flags_to_clear;
|
||||||
const bool is_short_lived_floating_window = (flags & (ImGuiWindowFlags_ChildMenu | ImGuiWindowFlags_Tooltip | ImGuiWindowFlags_Popup)) != 0;
|
const bool is_short_lived_floating_window = (flags & (ImGuiWindowFlags_ChildMenu | ImGuiWindowFlags_Tooltip | ImGuiWindowFlags_Popup)) != 0;
|
||||||
if (flags & ImGuiWindowFlags_Tooltip)
|
if (flags & ImGuiWindowFlags_Tooltip)
|
||||||
viewport_flags |= ImGuiViewportFlags_TopMost;
|
viewport_flags |= ImGuiViewportFlags_TopMost;
|
||||||
@ -6266,7 +6267,9 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
|
|||||||
viewport_flags &= ~window->WindowClass.ViewportFlagsOverrideClear;
|
viewport_flags &= ~window->WindowClass.ViewportFlagsOverrideClear;
|
||||||
|
|
||||||
// We also tell the back-end that clearing the platform window won't be necessary, as our window is filling the viewport and we have disabled BgAlpha
|
// We also tell the back-end that clearing the platform window won't be necessary, as our window is filling the viewport and we have disabled BgAlpha
|
||||||
viewport_flags |= ImGuiViewportFlags_NoRendererClear;
|
if (!(flags & ImGuiWindowFlags_NoBackground))
|
||||||
|
viewport_flags &= ~ImGuiViewportFlags_NoRendererClear;
|
||||||
|
|
||||||
window->Viewport->Flags = viewport_flags;
|
window->Viewport->Flags = viewport_flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user