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

_1952+ commits._

### Features
- **Added ImGuiItemFlags_LiveEdit flag, and much-awaited support for disabling it. (#9476, #701)** (18d63b1)
- **Examples: Apple+Metal4, SDL3+Metal4: amends for multi-viewport support. (#9466, #9451)** (6029ee3)
- **Backends: Metal4: added multi-viewport support (#9465, #9451)** (df71e28)
- **Examples: Apple + Metal4: add example (#9466, #9451)** (62399b5)
- **Backends: Metal4: added metal-cpp support. (#9461)** (520a29d)
- **Examples: Android: update to AGP 9.2.0 to support Gradle 9.6.0.** (6824e2c)
- **Tables: add support for ImGuiTableFlags_TrackTopologyChanges (#9108, #4046)** (2f94e7d)
- **ImFontAtlas: moved common TexData calls into a same helper functions, so adding new ones is easier.** (fbcf951)

### Fixes
- **ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. (#9337)** (cfdc953)
- **ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. (#9337)** (f626c1c)
- **ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. (#9337)** (5d56c09)
- **ColorPicker: added option to fix Saturation/Value triangle in wheel picker. (#9337)** (0785cdb)
- **Examples: OpenGL3+Win32: rework OpenGL initialization to allow Wine compatibility. Fix. (#9427, #6577)** (776bf2a)
- **Fonts: better document the fact that ImFontAtlas::Clear()/ClearFonts() functions are unlikely to be useful nowadays + fix tex->Updates[] ever-growing if ClearFonts() is called between frames.** (14278db)

### Backend
- **Merge branch 'master' into docking** (9b4eb24)
- **Version 1.92.9** (01380c5)
- **Examples: SDL+WebGPU: removed stray glfw from cmakefiles. (#9387, #9428)** (d94d0f3)
- **ImDrawData: fixed late initialized field. (Amend 6f41d13)** (f31f98f)
- **Popups: added bool return value to OpenPopup(), OpenPopupOnItemClick() functions. (#9429)** (f594633)
- **Merge branch 'master' into docking** (ca49eff)
- **Added ImTextureData::QueueUserData for staged-rendering texture queues e.g. imgui_threaded_rendering.h. (#8597, #9136)** (b335bf4)
- **DrawData: added FrameCount field to facilitate debugging multi-threading issues. (#8597, #9136)** (6f41d13)
- **(Breaking) ImDrawData: marked draw_data->CmdListsCount as obsolete. Use draw_data->CmdLists.Size.** (5483893)
- **Update FAQ.md** (295385f)
- **Update FAQ.md** (c9c458c)
- **Disabling ImGuiItemFlags_LiveEditOnInputScalar by default! (#9476, #701)** (e4f7c5c)
- **Fixed build when using IMGUI_DEBUG_HIGHLIGHT_ALL_ID_CONFLICTS + IMGUI_DISABLE_OBSOLETE_FUNCTIONS. (#9482)** (d00a875)
- **Backends: OpenGL3: fixed updating textures. (#9478, #9477, #9473, #8802)** (61a0936)
- **Examples: SDL3+Metal4: fixed bad merge.** (81c008f)
- **Merge branch 'master' into docking** (93bd4f0)
- **Split ImGuiItemFlags_LiveEdit into ImGuiItemFlags_LiveEditText, ImGuiItemFlags_LiveEditScalar. Added Demo contents. (#9476, #701)** (26b8292)
- **EndGroup: fixed reporting combined Edit when it happens at the same time as tabbing to next ActiveId. (#9476, #701)** (c958f16)
- **Internals: rename NextItemData.ItemFlags -> ItemFlagsSet** (4853f5c)
- **InputText: tag InputTextDeactivatedState with an elapsing frame. Avoid unnecessary InputTextDeactivateHook() call on manual deactivation. InputTextDeactivateHook() only takes a record when Edited + callback marks edited. (#9476, #701)** (2392a52)
- **Settings: fixed issues caliing ClearWindowSettings() followed by LoadIniSettingsFromMemory().** (baeea39)
- **Backends: OpenGL2/3: Backup and restore GL_UNPACK state in UpdateTexture(). Amends. (#9473, #8802)** (0ff4a8a)
- **Backends: OpenGL2/3: Backup and restore GL_UNPACK state in UpdateTexture() (#9473, #8802)** (e3927dc)
- **Backends: SDL2: restore SDL_StartTextInput()/SDL_StopTextInput() calls on Android (#7636, #9474)** (35a7e8e)
- **Backends: Android: clear mouse position on touch release. (#6627, #9474)** (9090828)
- **Backends: Vulkan: Fixed use-after-free in multi-viewport dynamic rendering path (#9390, #9468)** (162ce49)
- **Tables: validate ini settings column count. (#9472)** (0720d59)
- **Settings: fixed ConfigIniSettingsAutoDiscardMonths not calling Cleanup (#9460, #9471)** (addbfa5)
- **Backends: SDL_Renderer3: fixed changing scale mode not actually working on all platforms. (#7616, #9470, #9378)** (bad1ee7)
- **Backends: SDL_Renderer3: fixed default sampler not being Linear. (#7616, #9470, #9378)** (003ee19)
- **InputText: reworked `io.ConfigInputTextEnterKeepActive` mode so that pressing Ctrl+Enter or Shift+Enter still allows to deactivate.** (b62bfd6)
- **Examples: Apple+Metal4: added example (#9466, #9451)** (e95dc87)
- **(Breaking) Drag and Drop: commented out legacy name `ImGuiDragDropFlags_SourceAutoExpirePayload`. Use `ImGuiDragDropFlags_PayloadAutoExpire`.** (da137cb)
- **Merge branch 'master' into docking** (a23e9fb)
- **Settings: added DiscardAll option to CleanupIniSettings() / ImGuiSettingsCleanupArgs. (#9460)** (68fce9f)
- **Settings: fixed Windows not honoring DiscardWhenMissingDate. (#9460)** (f903a7e)
- **Settings: added a type name filter to CleanupIniSettings() / ImGuiSettingsCleanupArgs. Amends. (#9460)** (112d6d9)
- **Settings: added a type name filter to CleanupIniSettings() / ImGuiSettingsCleanupArgs. (#9460)** (2c49da4)
- **Tables, Settings: make TableSettingsCreate() recycle existing unbound entry (might happen after a GC or anything clearing table->SettingsOffset.  (#9460, #9108)** (85593d0)
- **Settings: added explicit DiscardWhenMissingDate. (#9460, #9108)** (d1eb8d0)
- **Backends: Metal4: added ImTextureID tex_id to residency set. (#9461, #9458, #9451)** (481f2ce)
- **(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to io.ConfigColorEditFlags. (Amend 0e479b9, 9f7d808)** (aca6917)
- **(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to io.ColorEditFlags. (Amend 0e479b9)** (9f7d808)
- **(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to style.ColorEditFlags.** (0e479b9)
- **Examples: OpenGL3+Win32: rework OpenGL initialization to allow Wine compatibility. (#9427, #6577)** (4f1ea36)
- **Examples: OpenGL3+GLFW,SDL2,SDL3: improve Wine compatibility by passing empty GLSL version to ImGui_ImplOpenGL3_Init().  (#9427, #6577)** (a977144)
- **CI, Backends: Metal4: fixed CI, added comments. (#9458)** (e616ace)
- **Docking: minor packing of AuthorityForXXX fields.** (4be08b1)
- **Merge branch 'master' into docking** (d098bf9)
- **Settings, IO: move ConfigDebugIniSettings in same section.** (5c2160a)
- **Settings: added io.ConfigIniSettingsAutoDiscardMonths, trimming tool in in Metrics->Settings + internal CleanupIniSettings(). (#9460)** (5fb77df)
- **Settings, IO: added io.ConfigIniSettingsSaveLastUsedDate, platform_io.Platform_SessionDate, IMGUI_DISABLE_TIME_FUNCTIONS(). (#9460)** (f7e8343)
- **Fonts, Context: assert that ImFontAtlas has no other references when destroying an owned atlas. (#9426)** (8fc2580)
- **Backends: Metal4: minor tweaks/comments.  (#9458, #9451)** (caddd26)
- **Backends: Metal4: Added Metal 4 backend. Added SDL3+Metal4 example. (#9458, #9451)** (fc63953)
- **Backends: Metal4: copy imgui_imp_metal.* to imgui_impl_metal4.*, unmodified. (#9458, #9451)** (93dd4c1)
- **Added GetItemClickedCountWithSingleClickDelay(), io.MouseSingleClickDelay. (#8337)** (279d04f)
- **Internals: track WasSelected/WasSoleSelected data for ActiveId. (#8337)** (0edad6d)
- **BeginMenu(), MenuItem() use NextItemData.Flags + Fixed typo in comment. (#9456)** (e408733)
- **Backends: GLFW,SDL2,SDL3: added wayland/driver marker in io.BackendPlatformName.** (9e6c041)
- **Examples, SDL2/SDL3: use SDL_GetWindowSizeInPixels() to create framebuffers. (#8761, #9124)** (c66d9a8)
- **Settings: minor struct packing.** (76f5be2)
- **Merge branch 'master' into docking** (5098ce1)
- **Multi-Select: reworked ImGuiMultiSelectFlags_NoAutoSelect as it carried side-effects that were hardcoded/designed to use multi-selection on checkboxes. (#9391)** (60fbdbb)
- **Tables: fixed (harmless) flag clearing issue in TableReconcileColumns(). (#9108)** (1c12411)
- **RenderNavCursor: take rounding as input. Removed ImGuiNavRenderCursorFlags_NoRounding.** (0e355af)
- **Style, Nav: scale the NavCursor border thickness when using large values with `ScallAllSizes()`.** (26432cf)
- **TreeNode: fixed nav cursor rendering with rounding even though tree nodes don't have it. (#7589)** (be374fa)
- **Merge branch 'master' into docking** (64a3e72)
- **Tables: rewrote TableLoadSettingsForColumns() to match TableReconcileColumn() logic more precisely. (#9108)** (e744537)
- **Tables: fixed some cases of reconcile/load handling when using duplicate identifiers. (#9108)** (ec69495)
- **Tables: tracking topology changes by default. Match by ID then in sequential order for remaining. (#9108, #4046)** (b522576)
- **Tables: extract part of TableLoadSettingsForColumns() into TableLoadSettingsForColumn(). (#9108)** (570c0e0)
- **Tables: avoid forcing a settings load on count change. (#9108)** (b9cf217)
- **Tables: rework _TrackTopologyChanges to function without enforcing saving order/visibility. (#9108)** (7930405)
- **Tables: fixed duplicate settings entry.** (f2fcdfe)
- **Nav, Popups: fixed context menu activation with gamepad erroneously testing for _NavEnableKeyboard instead of _NavEnableGamepad. (#9454)** (b2377d6)
- **Tables: fixed TableGcCompactSettings() not invalidating bound offset. A crash could in theory be triggered if clicking "Gc All" after saved tables have reduced column count.** (d15966f)
- **Windows: fixed double-click collapse toggle not owning the mouse button. (#9439)** (9a5c070)
- **Backends: OpenGL3: Expose selected render state in ImGui_ImplOpenGL3_RenderState, allowing to dynamically select between use of glBindSampler() and glTexParameter(). (#9378)** (73a6610)
- **Tables: fixes incorrect forward declaration for a missing function + fixed tooltip comment. (#9445, #9448)** (13fc81f)
- **Docs, Backends: OpenGL3, Vulkan: added comments about custom sampler. (#9378)** (2064059)
- **Fixed unused parameter 'table'. (#9447, #9446)** (b47a389)
- **Merge branch 'master' into docking** (036bf93)
- **Fixed window using the ImGuiWindowFlags_AlwaysAutoResize flag would have ItemWidth default change when docked. (#9355, #9443)** (1ba29f2)
- **Added IM_DEBUG_BREAK() handler for GCC+AArch64/ARM64.** (138c0e6)
- **Tables: comments about misleading TableSetupColumn() user_id parameter, renamed to user_data.** (b46a37e)
- **Tables: allow calling TableQueueSetColumnDisplayOrder() between TableSetupColumn() and TableUpdateLayout() by removing an early out.** (e6147a3)
- **Tables: apply queued requests in TableUpdateLayout()** (721da6a)
- **Fixing build.** (3240201)
- **Tables: tweaked debug tools + minor data packing in in ImGuiTableColumn** (94a3dcc)
- **ImSpan: added clear(), empty() helpers.** (fea6f46)
- **Tables: split code from TableSetupColumn() so it can be more easily deferred.** (d43c3f9)
- **Tables: save/restore column ID (unused)** (36ea972)
- **Tables, Debug Log: added IMGUI_DEBUG_LOG_TABLE, ImGuiDebugLogFlags_EventTable. Clicking "Clear settings" calls TableResetSettings() immediately.** (2e0f949)
- **Tables: Headers: fixed label being clipped early to reserve space for a sort marker even when no sort marker is displayed.** (924f571)
- **Tables: Context-menu: added "Reset" sub-menu and "Reset Visibility" option.** (e5ff2d0)
- **Internals: move function declarations into Tables section.** (b10137f)
- **Tables: TableGcCompactTransientBuffers() can ditch AngledHeadersRequests data.** (aa37735)
- **Tables: moved RefScale update and application to TableUpdateLayout().** (4312c43)
- **Examples: WebGPU: Require C++20 to build Dawn examples (#9433, #9432)** (5220a3f)
- **Merge branch 'master' into docking** (2af6dd9)
- **ImDrawListSharedData: rename CircleSegmentMaxError to CircleTessellationMaxError. Remove misleading ArcFastRadiusCutoff assignment.** (6acba3b)
- **Examples: WGPU: fixed typo for wvgk cloning. (#9428, #9387)** (fc5e2f2)
- **Backends: OpenGL3: GLSL version detection assume GLSL 410 when GL context is 4.1. Fixes an issue running on macOS with Wine. (#9427, #6577)** (7950c96)
- **Fonts: fixed an issue where passing a manually created ImFontAtlas to CreateContext() would incorrectly destroy it in DestroyContext() when ref-count gets back to zero. (#9426)** (c4eaac6)
- **Fixed a build issue when defined IMGUI_API + IMGUI_DISABLE_OBSOLETE_FUNCTIONS. (#9424)** (5a42cdd)
- **(Breaking) TreeNode: commented out legacy name ImGuiTreeNodeFlags_SpanTextWidth which was obsoleted in 1.90.7 (May 2024). Use ImGuiTreeNodeFlags_SpanLabelWidth instead.** (995e4a6)
- **DrawList: don't mark ImDrawListFlags_TextNoPixelSnap as internal in comments. (#3437, #9417, #2291)** (5aa0393)
- **Tabs: use AddRectFilled().** (f241419)
- **Viewports: fixed an issue where the implicit "Debug" window while hidden would erroneously interfere with merging secondary viewports into the main viewport.** (00abd2c)
- **Fixed small typo in demo code (#9425)** (3495e32)
- **ColorButton: small rendering tweak/optimization for the alpha checkerboard.** (3b99fc4)
- **DrawList: rename ImDrawListFlags_NoTextPixelSnap -> ImDrawListFlags_TextNoPixelSnap. (#3437, #9417, #2291)** (cac16b0)
- **DrawList: added ImDrawListFlags_NoTextPixelSnap to disable snapping of AddText() coordinates for a given scope. (#3437, #9417, #2291)** (1d33ea9)
- **Using custom ceilf inline impl in ImGui::CalcTextSize().** (75f9859)
- **Tweak CalcTextSize() awkward width rounding/ceiling code to reduce floating-point imprecisions altering the result by 1 even at relatively small width. (#791) + apply same fudge factor to less important roundings.** (12b7977)
- **Merge branch 'master' into docking** (4cb21e4)
- **DrawList: skip PathLineTo/PathStroke calls for common AddLine(), AddLineH(), AddLineV() functions. (#4091)** (33bb693)
- **Fonts: Added macros to disable ProggyClean/ProggyVector separately. (#9407)** (ac07da2)

### Docs
- **Docs: rework FAQ index, added multi-threading and string-view details.** (e722165)
- **Docs: fixed link in FAQ index. (#9480)** (7038887)
- **Docs: fixed typos (#9449)** (7aaf10f)
- **Docs: minor amends to ImTextureData comments.** (f1dd18b)
- **Docs: Fonts: amends.** (a054a01)
- **Docs: Fonts.md: added notes about TexMinWidth,TexMinHeight.** (045a090)
- **Docs: Fix small grammar mistake in README. (#9423)** (70f02b0)
- **Docs: retroactively amend 1.92.8 changelog about `ImDrawFlags_Closed` value.** (783eba9)
- **Docs: retroactively amend changelog for AddLineH(), AddLineV().** (243097c)

### Chore
- **CI: Android: Gradle 9.4.1 via setup-gradle action for AGP 9.2.0 (#8878) (#9467)** (0302703)
- **CI: enable Metal4 examples. (#9466, #9451)** (9bb131f)
- **CI: update PVS studio. Reduce Windows CI workload for typical push.** (7d43c74)
- **CI: fixed Android build on Ubuntu-latest by expliciting Gradle version to < 9.x.** (e9ea190)
- **Style: added MenuItemRounding, SelectableRounding, ImGuiStyleVar_MenuItemRounding, ImGuiStyleVar_SelectableRounding. (#7589, #9375, #9453)** (ac6f968)
- **CI: use Visual Studio 2026. (correct path)** (3601839)
- **CI: use Visual Studio 2026.** (2aaa6d8)

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