ocornut
ac261203a5
(Breaking) Backends: Vulkan: redesigned to use separate ImageView + Sampler instead of Combined Image Sampler. (fixes, amends) ( #914 )
2026-04-22 14:43:44 +02:00
ocornut
a1e05521e9
Backends: GLFW: added a Win32-specific implementation of ImGui_ImplGlfw_GetContentScaleXXXX functions for legacy GLFW 3.2. ( #9003 )
...
Since we ship GLFW 3.2 binaries for Windows this makes our examples a little better behaving by default.
Ideally we'd use ImGui_ImplWin32_GetDpiScaleForHwnd() and ImGui_ImplWin32_GetDpiScaleForMonitor() but they are too much code to copy.
2026-04-21 17:24:41 +02:00
ocornut
ac88294b4a
MultiSelect: Box-Select +Tables: fix usage of box-selection columns with items straying out of columns. ( #7994 , #2221 )
...
Use 00d3f9295e .
+ Assets Browser toggle to enable ScrollX.
2026-04-20 11:12:43 +02:00
ocornut
ea1c04f7ab
Multi-Select + Tables: fixed an issue which could lead to an extra vertical offset in the Header row. ( #8250 , #7994 )
...
Because BeginMultiSelect() does `ms->ScopeRectMin = window->DC.CursorMaxPos = window->DC.CursorPos` at a time where CursorPos is already past MaxPos.y because of ItemSpacing.y. Accumulate spacing.
2026-04-17 19:23:10 +02:00
ocornut
97939e6837
Multi-Select: Box-Select: fixes for using accross nested child windows. ( #8364 )
...
- IsFocused scan nav focus route.
- When covering multiple windows, draw in front most ones (grabbed FindFrontMostVisibleChildWindow() from docking branch).
2026-04-17 16:36:09 +02:00
ocornut
c91b03060d
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 )
2026-04-17 14:38:12 +02:00
ocornut
a2916923a1
MultiSelect: Box-Select + Clipper: extend UnclipRect by ItemSpacing. ( #7994 , #8250 , #7821 , #7850 , #7970 )
...
Amend 1ac469b50f
2026-04-16 23:37:46 +02:00
ocornut
d4783bd553
Added missing Test Engine hooks for PlotXXX(), VSliderXXX(), TableHeader().
2026-04-16 16:39:07 +02:00
ocornut
ce855cada2
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 )
2026-04-16 15:21:56 +02:00
ocornut
0e318a5182
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 )
2026-04-16 11:32:07 +02:00
Andy Grundman
4b80d409e7
Backends: Metal: use a dedicated bufferCacheLock to avoid crashing when bufferCache is replaced by a new object while being used for synchronize(). ( #9367 )
...
This also removes the dispatch onto main when adding the finished buffers back into the cache. This operation should be fine to run on any thread as long as it's inside the sync block.
2026-04-14 17:14:08 +02:00
ocornut
ed4dd679f1
Fixed vertical scrollbar top coordinates when using thick borders on windows with no title bar and no menu bar. ( #9366 )
2026-04-14 16:39:08 +02:00
ocornut
3cd8683061
Fonts: assert when using MergeMode with an explicit size over a target font with an implicit size, as scale factor are likely erroneous. ( #9361 )
2026-04-13 16:45:18 +02:00
ocornut
bbd0af7256
Multi-Select: Box-Select+Tables: fixed using BeginMultiSelect() before table layout is locked. ( #8250 )
2026-04-13 16:19:45 +02:00
ocornut
f678c91617
Multi-Select: disable MultiSelectAddSetRange() attempt at merging consecutive requests submitted from box-selection.
...
Essentially reverts 79b77d91c , f904a6646c which did the initial span merging.
Amend and disable change done for f08b33f .
2026-04-09 23:13:15 +02:00
ocornut
6ce4b44547
Mulit-Select: Box-Select: fixed an issue using in a table while relying on the TableNextColumn() return value to perform coarse clipping. ( #7994 )
...
This is presumably not sufficient as MultiSelectAddSetRange() is also deficient there.
2026-04-09 23:13:12 +02:00
ocornut
f08b33fd0c
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 )
...
SetNextItemSelectionUserData() could use g.NextItemData.SelectionUserData if we could guarantee if would be valid when nesting multi-select blocks.
But it doesn't make much of a difference as whole ImGuiMultiSelectTempData fits in 2 cache lines.
2026-04-09 22:16:47 +02:00
ocornut
b444694b3d
Multi-Select: Box-Select: fixed an issue using ImGuiMultiSelectFlags_BoxSelect2d mode, where items out of view wouldn't be properly selected. ( #7994 , #1861 , #6518 )
...
Because BoxSelectRectPrev and BoxSelectRectCurr were clamped to scope boundaries, dragging mouse outside of the scope would usually keep one axis unchanged.
Amend 15391762dd
2026-04-09 21:40:29 +02:00
ocornut
01a4ad3a50
Docs: update legacy TODO list.
2026-04-09 15:01:40 +02:00
ocornut
f4ed421a88
InputText: CharFilter callback event sets CursorPos/SelectionStart/SelectionEnd. ( #816 )
2026-04-09 14:54:09 +02:00
ocornut
11de9df44c
Minor optimization: reduce redudant label scanning in common widgets.
2026-04-09 14:25:34 +02:00
ocornut
95bd1577d6
Windows: Child windows with only ImGuiChildFlags_AutoResizeY flag keep using the proportional default ItemWidth. ( #9355 )
...
+ Removed Tooltip flag check, it's from 8c4fcf1359 (!) where AlwaysAutoReszie was added after Tooltip. Nowadays Tooltips sets ImGuiChildFlags_AlwaysAutoResize.
2026-04-09 13:11:16 +02:00
ocornut
dd17495a42
Detect and report error when calling End() instead of EndPopup() on a popup. ( #9351 )
2026-04-08 21:40:05 +02:00
ocornut
1870a779e1
Windows: fixed a single-axis auto-resizing feedback loop issue with nested containers and varying scrollbar visibility. ( #9352 )
2026-04-08 21:26:16 +02:00
ocornut
bccec3eabc
Tables: fixed IdealMaxPos.y/CursorMaxPos.y computation being wrong when vertically scrolling. ( #9352 , #7651 )
...
See ""table_reported_size_outer" test amends (0f9d1e02b0).
2026-04-08 20:01:00 +02:00
ocornut
d946c6932b
InputText: fixed a crash toggling ReadOnly flag while active. ( #9354 )
2026-04-08 15:56:59 +02:00
ocornut
4d38508c6b
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 )
...
Since ScrollX de-facto also enables ScrollY we can't gate accounting for ScrollbarSizes.x based on explicit ScrollY.
Amend a31aa683f
2026-04-08 15:07:11 +02:00
ocornut
6985925244
Clipper, Tables: Improved error reporting when misusing the clipper inside a table + made the assert a better recoverable error. ( #9350 )
...
Amend 20e040c8
2026-04-07 19:19:40 +02:00
ocornut
7cb0baeb77
imgui_freetype: add FreeType headers & compiled version number in the 'About Dear ImGui' user facing string.
2026-04-07 17:18:16 +02:00
hunam
49df3116bc
Backends: Metal: avoid redundant vertex buffer bind in SetupRenderState. ( #9343 )
2026-04-03 19:14:23 +02:00
ocornut
03a0b00a34
InputTextMultiline: fixed an issue processing deactivation logic when an active multi-line edit is clipped due to being out of view.
2026-04-03 16:25:57 +02:00
ocornut
4a61188322
Version 1.92.8 WIP
2026-04-03 16:15:46 +02:00
ocornut
dac07199cf
Version 1.92.7
2026-04-02 19:22:53 +02:00
ocornut
65ebca8157
Fonts: fixed an issue introduced in 1.92.6 where style.FontBaseSize would be cleared during the first frame if no fonts was explicitely added before.
...
Amend 3aba95060e
2026-04-02 18:35:24 +02:00
ocornut
fc5e421cb9
Tables: columns freeze doesn't enforce a particular order + rework changelog for clarity. ( #9312 )
2026-04-02 13:59:41 +02:00
ocornut
bf10275aa7
Tables: allow reordering columns by dragging them in the context menu. ( #9312 )
2026-04-01 20:08:34 +02:00
ocornut
836278db6c
Tables: context menu now present columns in display order. ( #9312 )
2026-04-01 20:08:29 +02:00
ocornut
505bc9a312
Tables: clarify FrozenColumns order to be in order space not in visible space.
...
+ Removed LeftMostUnfrozenOrder + Angled Headers comments.
While not strictly part of #9312 , presenting a suitable reordering menu was made difficult by the old behavior.
2026-04-01 20:08:26 +02:00
ocornut
07acc8bc87
Tables: Angled Headers: angled section for column being reordered via the regular headers stay highlighted during reordering.
...
Easily possible thanks to 6603cde .
2026-04-01 20:05:34 +02:00
ocornut
6603cdef98
Tables: fixed dragging a header to reorder outside of visible bounds (due to horizontal scrolling) from losing active id.
2026-04-01 20:03:30 +02:00
Daniel K. O. (dkosmari)
3c78afbbbb
Added missing ImVec2/ImVec4 operators. ( #9339 , #8510 , #8258 )
2026-03-31 21:44:09 +02:00
ocornut
97075fae4b
Clipper: always pulls current context on ImGuiListClipper::Begin(). ( #9324 , #5856 )
...
Marked Ctx as internal in the comments.
2026-03-30 12:53:30 +02:00
thedmd
bd3c925680
DrawList: PathArcTo(): fixed erroneous segment count for small arcs on large circles. ( #9331 , #9313 )
2026-03-30 12:04:22 +02:00
ocornut
ed2e5dd0f0
Examples+WebGPU: added support for WGVK in cmakefiles. ( #9316 , #9246 , #9257 )
2026-03-25 16:16:15 +01:00
ocornut
59183cf782
Backends, Examples: WebGPU: added support for WGVK. Remaining amends. ( #9316 , #9246 , #9257 )
2026-03-25 15:31:39 +01:00
ocornut
51f590a2a8
Backends: GLFW: mouse cursor is properly restored if changed by user app/code while using glfwSetInputMode(..., GLFW_CURSOR_DISABLED) or ImGuiConfigFlags_NoMouseCursorChange. ( #9322 )
...
Amend 9a4fd69f6
2026-03-25 14:17:29 +01:00
ocornut
697b6886e3
Docs: update FAQ about label/ID system. ( #9318 )
2026-03-23 14:13:36 +01:00
ocornut
50b488765f
ButtonBehavior, Selectable: made low-level ImGuiButtonFlags_PressedOnRelease not explicitely avoid taking current active id. ImGuiButtonFlags_NoHoldingActiveId may be used for that.
...
Ditto for ImGuiSelectableFlags_SelectOnRelease, ImGuiSelectableFlags_NoHoldingActiveId. All internals.
Toward #9312
2026-03-20 20:15:17 +01:00
ocornut
4af77622d9
Scrollbar: Fixed an issue which could lead initial click to move the current scroll by a pixel.
2026-03-20 16:14:17 +01:00
ocornut
2315b9f33d
InputTextMultiline: fixed an issue where edit buffer wouldn't be reapplied to back buffer on the IsItemDeactivatedAfterEdit() frame. ( #9308 , #8915 , #8273 )
2026-03-20 15:48:14 +01:00