## ocornut/imgui — v1.92.9b…v1.92.9b-docking

_1810+ commits._

### Features
- **Examples: Apple+Metal4, SDL3+Metal4: amends for multi-viewport support. (#9466, #9451)** (6029ee3)
- **Backends: Metal4: added multi-viewport support (#9465, #9451)** (df71e28)
- **Viewports: add GetDebugName() helper.** (148bd34)
- **Backends: Win32: viewports created by backend direct messages to DefWindowProcW() in order to support Unicode text inputs. (#9099, #3653, #5961)** (962cc23)
- **Backends: Vulkan: amends for docking. Add PipelineInfoForViewports and SwapChainImageUsage. (#8946, #8110, #8111, #8686)** (e4e3c2c)

### Fixes
- **ImDrawData: fixed a regression in 1.92.9 where legacy `ImDrawData::CmdListsCount` was always 0.** (b334d19)
- **Cast this to (void*) in zero-clearing memset calls to fix -Wnontrivial-memcall. Amends for docking (#9247, #8295, #8129, #8135)** (3d79353)
- **Docking, Viwport: Fixed a regression in 1.92.4 where partially moving a floating docking node with split over the main viewport would set the window in an invalid state.** (10ebda0)
- **Merge branch 'master' into docking w/ custom fix in Scrollbar()** (d6d5580)
- **Backends: GLFW: fix previous commit, would break multi-monitor. (#9195, #7902, #5683)** (63e9fbc)
- **Viewports: reworked IsViewportAbove() test as an alternate fix for #8948, #9172, #9131, #9128.** (c389a95)
- **Viewports: update LastFocusedStampCount earlier. Fix (#8948, #9172, #9131, #9128) but probably have other side effects too.** (9eebd37)
- **Viewports: fix ImGuiWindowFlags_NoBringToFrontOnFocus being ignored when windows first appear. (#7008)** (8a0888c)

### Backend
- **Merge branch 'master' into docking** (b48d1af)
- **Docking: (very minor) Scaling of drop boxes padding, rounding, thickness.** (81cfcb8)
- **Merge branch 'master' into docking** (9b4eb24)
- **Merge branch 'master' into docking** (ca49eff)
- **Examples: SDL3+Metal4: fixed bad merge.** (81c008f)
- **Merge branch 'master' into docking** (93bd4f0)
- **Backends: Vulkan: Fixed use-after-free in multi-viewport dynamic rendering path (#9390, #9468)** (162ce49)
- **Examples: Apple+Metal4: added example (#9466, #9451)** (e95dc87)
- **Merge branch 'master' into docking** (a23e9fb)
- **Docking: minor packing of AuthorityForXXX fields.** (4be08b1)
- **Merge branch 'master' into docking** (d098bf9)
- **Merge branch 'master' into docking** (5098ce1)
- **Merge branch 'master' into docking** (64a3e72)
- **Merge branch 'master' into docking** (036bf93)
- **Fixed window using the ImGuiWindowFlags_AlwaysAutoResize flag would have ItemWidth default change when docked. (#9355, #9443)** (1ba29f2)
- **Merge branch 'master' into docking** (2af6dd9)
- **Viewports: fixed an issue where the implicit "Debug" window while hidden would erroneously interfere with merging secondary viewports into the main viewport.** (00abd2c)
- **Merge branch 'master' into docking** (4cb21e4)
- **Merge branch 'master' into docking** (5a76f2a)
- **Merge branch 'master' into docking** (b61e563)
- **Merge branch 'master' into docking** (c51f1a6)
- **Merge branch 'master' into docking** (310f3c8)
- **Amend comments about io.ConfigViewportsNoDefaultParent, ImGuiBackendFlags_HasParentViewport.** (dc5c6b3)
- **Docking, Tabs: toggling tab bar visibility marks saved settings as dirty. (#9380)** (ed9d1e7)
- **Merge branch 'master' into docking** (417f5ed)
- **Merge branch 'master' into docking** (a310715)
- **Merge branch 'master' into docking** (dee5bf3)
- **Merge branch 'master' into docking** (6b61e60)
- **Merge branch 'master' into docking** (329c5a6)
- **Viewports: added opaque `void* PlatformIconData` storage in viewport and ImGuiWindowClass to allow passing icon information to a custom backend or hook. (#2715)** (d55608a)
- **Merge branch 'master' into docking** (bbcc83e)
- **Merge branch 'master' into docking** (b1bcb12)
- **Tables: columns freeze doesn't enforce a particular order + rework changelog for clarity. (#9312)** (02e9b8c)
- **Tables: fixed FrozenColumns issue introduced by 505bc9a.** (39d1be0)
- **Merge branch 'master' into docking** (757fd2f)
- **Merge branch 'master' into docking** (fe5c529)
- **Viewports: only apply AdjustWindowRectExForDpi() when Per-Monitor DPI Aware V2. Amend 54a865e.  (#8897)** (64f8893)
- **Viewports: fixed setting/getting correct size when viewports have OS decorations (e.g. io.ConfigViewportsNoDecoration = false) and process is running in Per-Monitor V2 DPI mode. (#8897)** (54a865e)
- **Backends: SDL3: use SDL_HAS_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED (SDL 3.4.0+) when available to avoid refreshing monitor work area every frame on Windows. (#8415)** (8d8892c)
- **Merge branch 'master' into docking** (e05bd9d)
- **Merge branch 'master' into docking** (60d7fb2)
- **Backends: Vulkan: fixed warning.** (80f8298)
- **Merge branch 'master' into docking** (8f63c36)
- **Backends: SDL2, SDL3: fixed an issue in 06c2c9f45 causing ImGuiBackendFlags_HasMouseHoveredViewport to never be set. (#9284)** (aeaaee8)
- **Merge branch 'master' into docking** (934c6a5)
- **Merge branch 'master' into docking** (352a7f1)
- **Viewports: fixed an issue where the implicit "Debug" window would erroneously be targeted for mouse inputs while hidden. (#9254)** (ad76935)
- **Merge branch 'master' into docking** (2a1b69f)
- **Style Editor: disable FontScaleDpi field when io.ConfigDpiScaleFonts is set.** (d763944)
- **Merge branch 'master' into docking** (3fb22b8)
- **Merge branch 'master' into docking** (943fcc4)
- **TabBar: expose NextScrollToTabId to internal API.** (913a3c6)
- **Docking: make dock node tab bar ID match parent ID of its tab items.** (921842e)
- **Docking: use DockContextDeleteNode() instead of raw IM_DELETE(), so we can better rework ownership of dock node tab bars.** (7a49ad6)
- **Docking: fixed various rendering issues and ability to have rounded floating dock nodes. Amend 91ce8cc. (#6993, #6151)** (f583787)
- **Docking: fixed various rendering issues and ability to have rounded floating dock nodes. (#6993, #6151)** (91ce8cc)
- **Windows: clarify/simplify background rendering: alpha should always be zero for DockNodeHost windows. (#2522)** (a6598f6)
- **Backends: GLFW: improve workarounds for cases where GLFW is unable to provide reliable monitor info.  (#9195, #7902, #5683)** (be2cfc2)
- **Ignore -Wsign-conversion warnings when building with gcc. (#9192)** (08c777a)
- **Merge branch 'master' into docking** (2a08c87)
- **Demo: rework DockSpace(), DockSpaceOverViewport() demo.** (fb06d32)
- **Backends: Win32: fixed an issue from 1.90.5 where newly appearing windows that are not parented to the main viewport don't have task bar icon appear before the windows was explicited refocused. (#7354, #8669)** (f89ef40)
- **Viewports: renamed local to make algorithm easier to follow + comments. Should be no-op. (#8948, #9172, #9131, #9128)** (7038e71)
- **Amends for docking for 9a6eb0a and 7a02f4b. (#9138)** (5b5d5b0)
- **Merge branch 'master' into docking (require next commit)** (66e08b6)
- **Backends: GLFW: Load X11 functions dynamically to avoid x11 linking requirement. (#9116, #9109)** (84a9d53)
- **Backends: SDL2/SDL3: adjusted IME offset to match other backends and master branch. (#6071, #1953)** (ca46e5d)
- **Backends: Vulkan: amend 1dc1964 for multi-viewports (#9152)** (8103582)
- **Merge branch 'master' into docking** (cab7088)
- **Docking: moving redundant clears in one place for simplicity.** (01a4cff)
- **Fixed implicit/fallback "Debug" window from staying visible if once docked. (#9151)** (00dfb3c)
- **Merge branch 'master' into docking** (396b33d)
- **Renamed IM_ARRAYSIZE() -> IM_COUNTOF(). Amend 4e7c055 for branch.** (0a47833)
- **Merge branch 'master' into docking** (26f7b2f)
- **Merge branch 'master' into docking** (9ca7ea0)
- **Merge branch 'master' into docking** (6327b63)
- **Fixed an assert in background dimming code,  which could trigger after using gamepad/keyboard to move a window to another viewport. (#9053)** (8e67fe1)
- **Merge branch 'master' into docking** (42e91c3)
- **Merge branch 'master' into docking** (772cbfd)
- **Merge branch 'master' into docking** (3912b3d)
- **Backends: Vulkan: fixed broken viewports broken by a6645e1. (#9080, #9068)** (eae6e96)
- **Merge branch 'master' into docking** (5e462eb)
- **Docking: added io.ConfigDockingNoDockingOver to prevent merging windows into a same tab-bar.** (93eb459)
- **Merge branch 'master' into docking** (219ba3b)
- **Docking: fixed crash loading certain form of invalid .ini settings. Amends. (#9070)** (ae1d278)
- **Docking: fixed crash loading certain form of invalid .ini settings, (#9070)** (4fa59df)
- **Backends: Vulkan: handle viewport surface creation failure without crashing. (#9068)** (a6645e1)
- **Docking, Style: fixed per-window ImGuiCol_UnsavedMarker changes not being shown in docking preview. (#8983, #9064)** (707ddd5)
- **Docking, Style: fixed per-window ImGuiCol_UnsavedMarker changes not being latched by docked windows. (#8983, #9064)** (891dd2d)
- **Merge branch 'master' into docking** (d4c156a)
- **Merge branch 'master' into docking** (3109131)
- **Merge branch 'master' into docking** (42015f7)
- **Viewports: rename FindViewportByID() parameter for clarity.** (ff45cb5)
- **Merge branch 'master' into docking** (1d942eb)
- **Merge branch 'master' into docking** (95e0472)
- **Backends: DirectX12: Fixed an issue in synchronization logic improving rendering throughput for secondary viewports. (#9025, #8961)** (05531f8)
- **Examples: GLFW+WebGPU: fixed cmakefile for example to use legacy path. (#8381)** (a470649)
- **Merge branch 'master' into docking** (28dabdc)
- **Examples: SDL2+DX11, SDL3+DX11, Win32+DX10, Win32+DX11: fixed one resource leak. (#9010, #4350)** (aa9f6db)
- **Merge branch 'master' into docking** (e7d2d63)
- **Nav, Docking, Selection: Fixed tab change from reinitializing navigation state. (#8997)** (96ad003)
- **Relaxed internal assert in MarkItemEdited() some more. (#8997)** (28ed290)
- **Merge branch 'master' into docking** (f9571ce)
- **Backends: DirectX12: remove unused members. (#8998)** (8d9c903)
- **Backends: DX10, DX11: avoid ImGui_ImplXXXX_SwapBuffers() handlers for secondary viewports crashing if SwapChain could not be created.** (8de97d1)
- **Viewports: fixed crsah in UpdateTryMergeWindowIntoHostViewport(). (#8948)** (cab82d9)
- **Drag and Drop: amend BeginDragDropTargetViewport() for mutli-viewports. (#5204)** (8f3f428)
- **Merge branch 'master' into docking** (f6754fd)
- **Viewports: rename ImGuiBackendFlags_HasParentViewportId->ImGuiBackendFlags_HasParentViewport. (#8948)** (a0a6639)
- **Merge branch 'master' into docking** (0f7f628)
- **Viewports: reimplement IsViewportAbove() using ParentViewport chain. (#8948)** (6fd4cf8)
- **Viewports: store ImGuiViewport* ParentViewport pointer as well. Backends: SDL3, Win32: use this pointer to reduce lookups. (#8948)** (3563f1e)
- **Viewports: fixed issue in UpdateTryMergeWindowIntoHostViewport(). (#8948)** (e7aa0de)
- **Viewports: added ImGuiBackendFlags_HasParentViewportId backend flag. (#8948)** (50a8bb2)
- **Backends: DirectX12: enable swapchain tearing if available. (#8965)** (b4514ce)
- **Backends: DX12: Use one fence instead of one by viewport. (docking) (#8961)** (bd9a37b)
- **Backends: DX12: Rework synchronization logic. (docking) (#8961)** (778aadc)
- **Merge branch 'master' into docking** (1aa91ac)
- **Backends: Vulkan: ImGui_ImplVulkan_CreatePipeline() for secondary viewport always use the RenderPass created by the ImGui_ImplVulkanH_CreateOrResizeWindow(). (#8946, #8110)** (1f020e5)
- **Backends: Vulkan: SwapChainImageUsage assume VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT which is added automatically. (#8946, #8110, #8111, #8686)** (bad3c14)
- **Merge branch 'master' into docking** (f3e8531)
- **Examples: DX10, DX11: Disabled DXGI's Alt+Enter default behavior in examples. (#4350)** (3d937be)
- **Backends: DX10, DX11, DX12: Disabled DXGI's Alt+Enter default behavior on secondary viewports. (#4350)** (15c88c4)
- **Examples: added SDL3+DirectX11 example (docking). (#8956, #8957)** (28837ec)
- **Merge branch 'master' into docking** (e285ecc)
- **Backends: Vulkna: added ImGui_ImplVulkan_GetWindowDataFromViewport() accessor/helper. (#8946, #8940)** (e639ff3)
- **(Breaking) renamed io.ConfigViewportPlatformFocusSetsImGuiFocus to io.ConfigViewportsPlatformFocusSetsImGuiFocus. (#6299, #6462)** (5a66d8f)
- **Viewports: changed default value of io.ConfigViewportsNoDefaultParent to true. (#8948, #3152, #2871)** (a1c0836)
- **Viewports: fixed an issue inferring Z-order when attempting to merge a viewport back in the the main/hosting viewport. (#8948)** (dfe308b)
- **IO: amend ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). (#8945, #2769)** (1ad9de5)
- **IO: added ImGuiPlatformIO::ClearPlatformHandlers(), ClearRendererHandlers(). Backends: call those on Shutdown(). (#8945, #2769)** (aa9476a)
- **Backends: DX12: rename internal functions to match other backends.** (3dd5165)
- **Viewports: DestroyContext() does not call DestroyPlatformWindows() anymore. (#7175, #8945)** (16b2d20)

### Docs
- **Docs: minor Changelog amends.** (f5f6ca0)
- **Docs: amend changelog with minor tweaks matching web version.** (e1b27ce)
- **Docs: improve docking API comments and demo. (#9000)** (94ed5b1)
- **Docs: reformat changlog entries.** (2c49902)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/ocornut/imgui?utm_source=github-action)._