mirror of
https://github.com/ocornut/imgui.git
synced 2026-11-06 06:25:54 +01:00
Torn-off (secondary) multi-viewport windows now stay above the main window, but not above other apps. While the app is active they are independent windows at NSFloatingWindowLevel (above the main window, but not children — so dragging the main window doesn't drag them). While the app is inactive they become children of the main window at the normal level: children are occluded together with the app by other apps, and the window server keeps a child above its parent at all times, so clicking the main window to reactivate can't flash it over them for a frame. Relative order is preserved across the transitions, and the main window is brought forward on activation so the whole app comes up as a unit. Replaces the previous transient parenting (attach-on-create / detach-on-mouse-release in ImGui_ImplOSX_UpdateWindow, which is removed). ImGui_ImplOSX_RestackSecondaryWindows is driven from the app activate/deactivate observers; DestroyWindow now detaches a parented window before hiding it. Examples: Metal4: resume rendering on app activation (idle-throttle fix) Cmd-Tab / clicking to reactivate the app doesn't produce a local input event, so the idle render throttle left the window on the slow heartbeat for up to ~1s after switching back, which looked like a lag. Bump the render counter on NSApplicationDidBecomeActive so the window redraws immediately on activation while keeping the idle CPU savings.
New to Dear ImGui? - Check out the Getting Started guide: https://github.com/ocornut/imgui/wiki/Getting-Started - About Backends: docs/BACKENDS.md file, or on the web: https://github.com/ocornut/imgui/blob/master/docs/BACKENDS.md - About Examples: docs/EXAMPLES.md file, or on the web: https://github.com/ocornut/imgui/blob/master/docs/EXAMPLES.md Backends = Helper code to facilitate integration with platforms/graphics api (used by Examples + should be used by your app). Examples = Standalone applications showcasing integration with platforms/graphics api. A few Examples have extra README files in their respective directory, please check them too! Once Dear ImGui is running (in either examples or your own application/game/engine), run and refer to ImGui::ShowDemoWindow() in imgui_demo.cpp for the end-user API.