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

_1884+ commits._

### Features
- **Backends: WebGPU: detect WGSL support at runtime instead of excluding WGVK at compile time. (#9387)** (b58836f)
- **Backends: Metal: add sampler states and DrawCallback_SetSamplerLinear / DrawCallback_SetSamplerNearest callbacks. (#9381, #9371, #9378)** (dee9b15)
- **PlotHistogram: add comments. (#9372)** (382b99c)
- **Backends: Metal: use a dedicated bufferCacheLock to avoid crashing when bufferCache is replaced by a new object while being used for synchronize(). (#9367)** (4b80d40)
- **Multi-Select: Box-Select: add compile-time debug options. (#7994, #1861, #6518)** (24677c5)
- **imgui_freetype: add FreeType headers & compiled version number in the 'About Dear ImGui' user facing string.** (7cb0bae)
- **Viewports: add GetDebugName() helper.** (148bd34)

### Fixes
- **Fixed BeginMenu() leading to window with is_resizable_width=true. Fix/amend 95bd1577d + ac1f57b. (#9355)** (4ac473b)
- **Fixed BeginMenu() leading to window with is_resizable_width=true. Fix/amend 95bd1577d. (#9355)** (ac1f57b)
- **Backends: OpenGL3: build fix for WebGL/ES2/Emscripten. (#9378)** (bda4982)
- **Backends: WebGPU: build fix for WebGL/ES2.** (6b05f71)
- **MultiSelect: Box-Select + Tables: Amend ac88294. fix usage of box-selection columns with items straying out of columns. (#7994, #2221)** (d7b40ab)
- **MultiSelect: Box-Select +Tables: fix usage of box-selection columns with items straying out of columns. (#7994, #2221)** (ac88294)
- **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)

### Backend
- **Merge branch 'master' into docking** (b61e563)
- **Version 1.92.8** (8936b58)
- **Fonts: clarify that ClearFonts() be useful over calling Clear().** (73afb6b)
- **Fonts: move ClearFonts(), ClearInputData(), ClearTexData() implementation (no other changes)** (b8f6c51)
- **Fixed warning on Clang 26.** (821a396)
- **Examples: WebGPU+GLFW/SDL2/SDL3: wire up the IMGUI_WGVK_DIR path. (#9387)** (2b31f65)
- **BeginMenu()/MenuItem(): fixed accidental triggering of child menu items when opening a menu inside a small host window forcing the child menu window to be repositioned under the mouse cursor. (#8233, #9394)** (bca5a69)
- **Checkbox, Style: added ImGuiCol_CheckboxSelectedBg. (#9392)** (eb453f2)
- **Inputs: SetItemKeyOwner(): does not set ownership is key is already taken.** (56b37bf)
- **Inputs: SetItemKeyOwner():  return true if ownership has been requested, which can to be checked to accurately gate further input test.** (0eae77f)
- **Scrolling, Inputs: using mouse wheel to scroll takes and keeps ownership of the corresponding keys while a wheeling window is locked.** (02ccd9f)
- **Demo: added image viewer with magnifier and grid.** (163b867)
- **Merge branch 'master' into docking** (c51f1a6)
- **Warning fixes.** (a70b97e)
- **(Breaking) DrawList: swapped the last two arguments of AddRect(), AddPolyline(), PathStroke(). thickness<>flags.** (6df50a0)
- **Textures: extract ImTextureDataQueueUpload() out of ImFontAtlasTextureBlockQueueUpload() (#8465)** (976c5c0)
- **Merge branch 'master' into docking** (310f3c8)
- **Amend comments about io.ConfigViewportsNoDefaultParent, ImGuiBackendFlags_HasParentViewport.** (dc5c6b3)
- **ImDrawList: added AddLineH(), AddLineV() helpers. (#9360)** (691b89b)
- **MultiSelect: Box-Select + Tables: fixed when using SpanAllColumns paths. (#9383, #7994)** (c0b693b)
- **InputScalar: fixed not parsing user input when the display format is configured not to show the scalar value. (#9385)** (865a6df)
- **MultiSelect: Box-Select + Tables: fixed when using SpanAllColumns paths. (#9383, #7994)** (d1a8995)
- **Drag and Drop, Style: added ImGuiStyleVar_DragDropTargetRounding. (#9056)** (ab36fba)
- **Docking, Tabs: toggling tab bar visibility marks saved settings as dirty. (#9380)** (ed9d1e7)
- **Examples: moving example_win32_directx11 on top of the .sln makes it the default selected project.** (e3033c3)
- **Merge branch 'master' into docking** (417f5ed)
- **InputInt, InputFloat, InputScalar: reinstated and fixed ImGuiInputTextFlags_EnterReturnsTrue. (#8665, #9299, #8065, #3946, #6284, #9117)** (10c378c)
- **Internals: store ImGuiItemStatusFlags_EditedInternal bypassing ImGuiItemFlags_NoMarkEdited.** (db23a78)
- **Merge branch 'master' into docking** (a310715)
- **Backends: removed samplers from ImGui_ImplDX10_RenderState, ImGui_ImplDX11_RenderState + fixed all Changelogs. (#9378)** (86ebb3b)
- **Removed DrawCallback_SetSamplerCustom feature for now. Too unreliable to get working everywhere. (#9378)** (7e7f3ad)
- **Backends: WebGPU: added SetSamplerLinear/Nearest draw callbacks. (#9378)** (dfe6f9e)
- **Backends: Vulkan, SDLGPU3: remove samplers from RenderState. (#9378)** (37952fb)
- **Backends: DX9, DX10, DX11, DX12, Allegro5, OpenGL2, OpenGL3, SDLRenderer2, SDLRenderer3, SDLGPU3, Vulkan: added standard draw callbacks when possible. (#9378)** (0a811e8)
- **(Breaking) Moved ImDrawCallback_ResetRenderState -> ImGui::GetPlatformIO().DrawCallback_ResetRenderState + added room in ImGuiPlatformIO for more standard backend-agnostic draw callbacks. (#9378)** (82f46a7)
- **Backends: WebGPU: protect better against zero tex id.** (a6a16cf)
- **Backends: WebGPU: always use SPIR-V shader on WGVK, as it cannot be detected at runtime. (#9316, #9246, #9257)** (e887098)
- **TabBar: comments about ImGuiTabBarFlags_FittingPolicyMixed and TabMinWidthShrink. (#9376, #3421, #8800)** (f934719)
- **Backends: WGPU: fixed build.** (ce3fe40)
- **Fixed some extremely zealous warnings (GCC -Wconversion, -Wdouble-promotion)** (f2f843c)
- **Backends: Vulkan: remove unused artefacts (mistakenly commited in 0453ae9).** (adc0027)
- **Merge branch 'master' into docking** (dee5bf3)
- **ImDrawList: made AddCallback() user data default to NULL + minor amends/comments.** (ac06ad7)
- **Update VS toolset in all .vcxproj from VS2015 (v140) to VS2017 (v141).** (4739af2)
- **Backends: OpenGL2/3, SDLRenderer2/3, DirectX9, Metal: moved Init/Shutdown code lower in the file.** (b065713)
- **Remove noise from 0453ae9 + amend comments. (#914)** (fb308c1)
- **(Breaking) Backends: Vulkan: redesigned to use separate ImageView + Sampler instead of Combined Image Sampler. (fixes, amends) (#914)** (ac26120)
- **(Breaking) Backends: Vulkan: redesigned to use separate ImageView + Sampler instead of Combined Image Sampler. (WIP) (#914)** (0453ae9)
- **Backends: Vulkan: minor changes.** (a5fd597)
- **Backends: Vulkan: renaming and moving code around to reduce diff in upcoming change. Should be no-op.** (2d131ef)
- **Backends: GLFW: added a Win32-specific implementation of ImGui_ImplGlfw_GetContentScaleXXXX functions for legacy GLFW 3.2. (#9003)** (a1e0552)
- **Merge branch 'master' into docking** (6b61e60)
- **Multi-Select + Tables: fixed an issue which could lead to an extra vertical offset in the Header row. (#8250, #7994)** (ea1c04f)
- **Demo: Assets Browser: fixed not submitting anything after a SetCursorScreenPos() call when no items. Would not manifest because BeginMultiSelect() altered CursorMaxPos. (#5548)** (cdb046a)
- **Multi-Select: Box-Select: fixes for using accross nested child windows. (#8364)** (97939e6)
- **Multi-Select: Box-Select: improve dirty unclip rectangle calculation + use in ImGuiMultiSelectFlags_BoxSelect1d mode when needed (e.g. wheel scrolling up). (#7994, #8250, #7821, #7850, #7970)** (c91b030)
- **MultiSelect: Box-Select +Tables: revert 4d00bf8ad which seems unneeded since enforce table layout in BeginMultiSelect(). (#7970, #7821).** (a2eb6d9)
- **MultiSelect: Box-Select + Clipper: extend UnclipRect by ItemSpacing. (#7994, #8250, #7821, #7850, #7970)** (a291692)
- **TextLink(), BeginCombo(): fixed two remainig instances of needlessly scanning for ##.** (2cbdb7a)
- **Added missing Test Engine hooks for PlotXXX(), VSliderXXX(), TableHeader().** (d4783bd)
- **Merge branch 'master' into docking** (329c5a6)
- **Tables, Multi-Select: Fixed an issue using Multi-Select within a Table causing column width measurement to be invalid when trailing column contents is not submitted in the last row. (#9341, #8250)** (ce855ca)
- **Separator(): enforce a minimum border size if style.SeparatorSize is 0.0f. (#9369)** (39e7bf5)
- **Backends: SDL2: Made ImGui_ImplSDL2_GetContentScaleXXX helpers return a minimum of 1.0f, as some Linux setup seems to report <1.0f value and this breaks scaling border size. (#9369)** (0e318a5)
- **Multi-Select: Box-Select+Tables: fixed Column return value when UnClipRect is active. (#7994, #8250)** (19753a3)
- **Demo: Assets Browser: make default icon size font dependant.** (6fb74f3)
- **Fixed vertical scrollbar top coordinates when using thick borders on windows with no title bar and no menu bar. (#9366)** (ed4dd67)
- **Fonts: assert when using MergeMode with an explicit size over a target font with an implicit size, as scale factor are likely erroneous. (#9361)** (3cd8683)
- **Multi-Select: Box-Select+Tables: fixed using BeginMultiSelect() before table layout is locked. (#8250)** (bbd0af7)
- **TabBar: changed edge's TabItem ClipRect to not pass an inverted PushClipRect().** (f83a378)
- **Fonts: rework UpdateCurrentFontSize() check. (#9364)** (84b4b35)
- **Minor optimization: reduce redudant label scanning in common widgets.** (2dc64f9)
- **DrawList: remove/strip old FixRectCornerFlags() code.** (5da7eb0)
- **Viewports: added opaque `void* PlatformIconData` storage in viewport and ImGuiWindowClass to allow passing icon information to a custom backend or hook. (#2715)** (d55608a)
- **Multi-Select: disable MultiSelectAddSetRange() attempt at merging consecutive requests submitted from box-selection.** (f678c91)
- **Mulit-Select: Box-Select: fixed an issue using in a table while relying on the TableNextColumn() return value to perform coarse clipping. (#7994)** (6ce4b44)
- **Multi-Select: Box-Select: fixed an issue where items out of horizontal view would sometimes lead to incorrect merging of sequential selection requests. (#7994, #1861, #6518)** (f08b33f)
- **Multi-Select: Box-Select: fixed an issue using ImGuiMultiSelectFlags_BoxSelect2d mode, where items out of view wouldn't be properly selected. (#7994, #1861, #6518)** (b444694)
- **InputText: CharFilter callback event sets CursorPos/SelectionStart/SelectionEnd. (#816)** (f4ed421)
- **Minor optimization: reduce redudant label scanning in common widgets.** (11de9df)
- **Update ignore list** (c2565fe)
- **Windows: Child windows with only ImGuiChildFlags_AutoResizeY flag keep using the proportional default ItemWidth. (#9355)** (95bd157)
- **Merge branch 'master' into docking** (bbcc83e)
- **Detect and report error when calling End() instead of EndPopup() on a popup. (#9351)** (dd17495)
- **Windows: fixed a single-axis auto-resizing feedback loop issue with nested containers and varying scrollbar visibility. (#9352)** (1870a77)
- **Windows: shallow renames (should be no-op).** (a9bd173)
- **Tables: fixed IdealMaxPos.y/CursorMaxPos.y computation being wrong when vertically scrolling. (#9352, #7651)** (bccec3e)
- **InputText: fixed a crash toggling ReadOnly flag while active. (#9354)** (d946c69)
- **Tables: fixed an issue reporting ideal size to parent window/container when both scrollbars are visible but only one of ScrollX/ScrollY was explicitly requested. (#9352, #7651)** (4d38508)
- **Reword code in CalcWindowAutoFitSize() to match the order used in size_desired calculation.** (c0e6580)
- **Clipper, Tables: Improved error reporting when misusing the clipper inside a table + made the assert a better recoverable error. (#9350)** (6985925)
- **Backends: Metal: avoid redundant vertex buffer bind in SetupRenderState. (#9343)** (49df311)
- **InputTextMultiline: fixed an issue processing deactivation logic when an active multi-line edit is clipped due to being out of view.** (03a0b00)
- **Version 1.92.8 WIP** (4a61188)
- **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)

### Docs
- **Docs: added SECURITY.md.** (eebaddd)
- **Docs: update legacy TODO list.** (01a4ad3)
- **Docs: minor Changelog amends.** (f5f6ca0)

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