Commit Graph

2553 Commits

Author SHA1 Message Date
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
2026-04-13 16:45:18 +02:00
ocornut bbd0af7256 Multi-Select: Box-Select+Tables: fixed using BeginMultiSelect() before table layout is locked. (#8250)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
2026-04-13 16:19:45 +02:00
ocornut f678c91617 Multi-Select: disable MultiSelectAddSetRange() attempt at merging consecutive requests submitted from box-selection.
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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.
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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)
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
scheduled / scheduled (push) Has been cancelled
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
ocornut 04dfcd838b InputTextMultiline: fixed losing revert value when activating scrollbar. (toward #9308) 2026-03-20 15:48:14 +01:00
ocornut 2d957152e4 InputTextMultiline: avoid going through reactivation path and InputTextDeactivateHook() when activating scrollbar. (#9308) 2026-03-20 15:37:56 +01:00
ocornut 325563a982 InputTextMultiline: InputTextMultiline: fixed an issue calculating lines count when active.
build / Build - Windows (push) Has been cancelled
build / Build - Linux (push) Has been cancelled
build / Build - MacOS (push) Has been cancelled
build / Build - iOS (push) Has been cancelled
build / Build - Emscripten (push) Has been cancelled
build / Build - Android (push) Has been cancelled
build / Test - Windows (push) Has been cancelled
build / Test - Linux (push) Has been cancelled
Amend 4252275
2026-03-20 15:17:07 +01:00
ocornut 9700846bb3 MultiSelect: added ImGuiMultiSelectFlags_SelectOnClickAlways mode. Prevents Drag and Drop of multiple items but allows BoxSelect to always reselect even when clicking inside a selecttion. (#9307, #1861) 2026-03-19 16:39:50 +01:00
ocornut 20d8bcb600 (Breaking) MultiSelect: renamed ImGuiMultiSelectFlags_SelectOnClick to ImGuiMultiSelectFlags_SelectOnAuto. (#1861, #6518) 2026-03-19 16:04:04 +01:00
ocornut 4d1ba782ee Revert changing default value of ImTextureID_Invalid to -1. Back to 0. (#9295, #9310, #9293, #8745, #8465, #7090)
Reverts 0db591935f
2026-03-19 11:54:42 +01:00
ocornut 0500e546b5 Backends: DX9, Metal, SDLRenderer2/3: fixed more assumptions that ImTextureID_Invald == 0 + Amend Changelogs. (#9310, #9293) 2026-03-19 11:47:01 +01:00