MCPcopy Create free account
hub / github.com/Overload-Technologies/Overload / UpdateViewportsEndFrame

Method UpdateViewportsEndFrame

Dependencies/ImGui/src/imgui.cpp:16121–16140  ·  view source on GitHub ↗

Update user-facing viewport list (g.Viewports -> g.PlatformIO.Viewports after filtering out some)

Source from the content-addressed store, hash-verified

16119
16120// Update user-facing viewport list (g.Viewports -> g.PlatformIO.Viewports after filtering out some)
16121static void ImGui::UpdateViewportsEndFrame()
16122{
16123 ImGuiContext& g = *GImGui;
16124 g.PlatformIO.Viewports.resize(0);
16125 for (int i = 0; i < g.Viewports.Size; i++)
16126 {
16127 ImGuiViewportP* viewport = g.Viewports[i];
16128 viewport->LastPos = viewport->Pos;
16129 viewport->LastSize = viewport->Size;
16130 if (viewport->LastFrameActive < g.FrameCount || viewport->Size.x <= 0.0f || viewport->Size.y <= 0.0f)
16131 if (i > 0) // Always include main viewport in the list
16132 continue;
16133 if (viewport->Window && !IsWindowActiveAndVisible(viewport->Window))
16134 continue;
16135 if (i > 0)
16136 IM_ASSERT(viewport->Window != NULL);
16137 g.PlatformIO.Viewports.push_back(viewport);
16138 }
16139 g.Viewports[0]->ClearRequestFlags(); // Clear main viewport flags because UpdatePlatformWindows() won't do it and may not even be called
16140}
16141
16142// FIXME: We should ideally refactor the system to call this every frame (we currently don't)
16143ImGuiViewportP* ImGui::AddUpdateViewport(ImGuiWindow* window, ImGuiID id, const ImVec2& pos, const ImVec2& size, ImGuiViewportFlags flags)

Callers

nothing calls this directly

Calls 4

IsWindowActiveAndVisibleFunction · 0.85
ClearRequestFlagsMethod · 0.80
resizeMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected