Commit Graph

2080 Commits

Author SHA1 Message Date
ocornut
eeab06363c ImStrv: Step 2 - change ImStrv typedef to struct, perform all other logic conversion.
Squashed commits (initially a commit from rokups + many rework by ocornut. keeping them separate commits made rebasing unnecessarily tricking so merged from 2024/02)
ImStrv: many fixes (see details), added imconfig class extension example, added natvis description.
ImStrv: rework toward ensuring End is always set to constant can be compile time calculated
ImStrv: using length(), fix ambiguous empty() function, fix altered behaviors, removed unused operators.
ImStrv: various tweaks and fixes. removed ImGuiTextRange from ImGuiTextFilter, fix test engine hooks, removed constructor only used twice.
2026-02-23 15:27:14 +01:00
Rokas Kupstys
da35765566 ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
(last rebase amend 2024/12/11)
2026-02-23 15:27:14 +01:00
ocornut
b8a1f74fd9 Version 1.92.7 WIP
+ minor demo tweaks.
2026-02-18 16:05:51 +01:00
ocornut
e118ea06e0 Version 1.92.6 2026-02-17 17:45:07 +01:00
Laurenz Altenmüller
fbe973a8d0 Cast this to (void*) in zero-clearing memset calls to fix -Wnontrivial-memcall (#9247, #8295, #8129, #8135)
Clang 20+ warns on memset(this, ...) for non-trivially copyable types via -Wnontrivial-memcall.
Should separately investigate -Wnonontrivial-memaccess vs -Wnonontrivial-memcall.
2026-02-16 16:29:00 +01:00
Naveen Regulla
eaa32bb787 Avoid using SSE intrinsic on ARM64/ARM64EC targets. (#9209, #5943, #4091) 2026-02-13 17:24:34 +01:00
ocornut
87262dd07a Nav, IO: added undocumented ConfigNavEnableTabbing flag. (#9218) 2026-02-10 21:51:54 +01:00
ocornut
fd9873a5c2 Tables: internals: extract TableSetColumnDisplayOrder() out of TableBeginApplyRequests() and clarify API limitations. 2026-02-10 18:12:53 +01:00
ocornut
76860017d5 Clipper, Nav: fixed an UBSan warning when using in a ListClipper region . (#9160) 2026-02-02 17:24:32 +01:00
ocornut
4b8e41cffb TabBar: expose NextScrollToTabId to internal API. 2026-02-02 17:08:38 +01:00
ocornut
5166bec5d8 Scrollbar: rounding corners selected based on a generic helper.
CalcRoundingFlagsForRectInRect() is backported and used multiple times by docking.
2026-01-29 17:23:28 +01:00
ocornut
8306e32495 Nav: fixed speed scale for resizing/moving with keyboard/gamepad. (#323)
Fix 04157da29.
2026-01-28 15:14:15 +01:00
Tom Seddon
ab6c9d9b12 Ignore -Wsign-conversion warnings when building with gcc. (#9192)
Co-authored-by: Tom Seddon <tom@trlinux>
2026-01-26 11:51:22 +01:00
ocornut
a117055b6b Internals: move field for locality. 2026-01-22 20:13:35 +01:00
ocornut
b015acc464 Viewports: added GetWindowViewport() in imgui_internal.h to increase consistency with code using this public API in docking branch. (#9140) 2026-01-22 17:50:25 +01:00
ocornut
42b7704b70 InputText: add ImGuiInputTextState::SetSelection() helper + make TextSrc valid outside scope for non-read only fields. (#9174) 2026-01-21 18:19:03 +01:00
ocornut
12223cc3e9 Error handling: rework macros, add IM_ASSERT_USER_ERROR_RET(), IM_ASSERT_USER_ERROR_RETV() to simplify code. 2026-01-19 12:16:10 +01:00
ocornut
f5384544cb (Breaking) Commented out legacy names obsoleted in 1.90 (Sept 2023): BeginChildFrame(), EndChildFrame(), ShowStackToolWindow(), IM_OFFSETOF(), IM_FLOOR(). 2026-01-08 17:33:09 +01:00
ocornut
7b3ad4a282 (Breaking) Popups: changed 'ImGuiPopupFlags popup_flags = 1' default value to be '= 0' for BeginPopupContextItem(), BeginPopupContextWindow(), BeginPopupContextVoid(), OpenPopupOnItemClick(). (#9157, #9146) 2026-01-07 18:15:15 +01:00
ocornut
cde6ad3967 Removed unused ImRect::Floor(). Clarified IM_TRUNC(), IM_ROUND(), ImRound64().
Better to remove since it uses IM_TRUNC which has unusual specs.
Note: 87a6443c5 always use positive value in ImRound64(). (#3609, #8215)
2025-12-23 18:16:33 +01:00
ocornut
d1de937c31 Fonts: ImFontAtlasFontRebuildOutput() helper. 2025-12-23 18:16:32 +01:00
ocornut
0ff810038d Added GetItemFlags() in public API. (#9127) 2025-12-22 18:33:12 +01:00
ocornut
a5dffbec38 Text: word-wrapping use a small lookup table. (#8990, #3237, #8503, #8139, #8439, #9094, #3002, #9066, #8838) 2025-12-21 18:04:01 +01:00
ocornut
683f9160b9 Internals: ImBitArray: rename storage. 2025-12-18 23:38:34 +01:00
ocornut
4e7c05504a Renamed IM_ARRAYSIZE() -> IM_COUNTOF(). Kept legacy name for now. 2025-12-17 14:30:01 +01:00
ocornut
cf64b7fa72 Tables: Fixed losing stored display order when reducing column count. (#9108, #4046)
Amend f2df804fcc
2025-12-08 19:29:41 +01:00
ocornut
60f8b0733c Rework color marker internals to facilitate arbitrary override using SetNextItemColorMarker().
Amend fa4b47c
2025-12-05 18:28:55 +01:00
ocornut
fa4b47c5e2 Added RGBA color markers to ColorEdit3/ColorEdit4 + opt-in ImGuiSliderFlags_ColorMarkers for Drags/Sliders.
+ Added ImGuiColorEditFlags_NoColorMarkers
+ Added style.ColorMarkerSize.
2025-12-05 16:32:48 +01:00
ocornut
ded52c71d9 Debug Log: can output to debugger. Added ImGuiDebugLogFlags_OutputToDebugger. 2025-12-05 15:07:44 +01:00
ocornut
d71091a957 Internals: amend RenderRectFilledRangeH() to avoid shadowed variables. 2025-12-04 16:27:54 +01:00
ocornut
d1e262ad55 Internals: refactor RenderRectFilledRangeH() into RenderRectFilledInRangeH() to take absolute coordinates instead of normalized ones.
Amend 01d4bf299a (#1296)
2025-12-04 16:13:12 +01:00
ocornut
1a62292ac0 Tables: fixed an issue where a very thin scrolling table would advance parent layout slightly differently depending on its visibility. 2025-11-27 22:37:00 +01:00
ocornut
ae873b1e0d Misc: rename extraneous parenthesizes from return statements. 2025-11-27 15:01:24 +01:00
ocornut
c36162fc6c Internals: add SetContextName() helper. (#9097)
Amend 37c243b.
2025-11-26 17:29:37 +01:00
ocornut
3fef0d553d Textures: fixed a building issue when ImTextureID is defined as a struct.
+ Added CI for this case.
2025-11-26 14:21:48 +01:00
ocornut
324cea1f41 Version 1.92.6 WIP 2025-11-24 13:35:41 +01:00
ocornut
ee48fad09d Internals: rename ImStableVector's BLOCK_SIZE to avoid conflict with Linux header defines. (#9088) 2025-11-21 19:47:03 +01:00
ocornut
6d910d5487 Version 1.92.5 2025-11-20 17:49:52 +01:00
ocornut
405c802607 Nav: shallow tweaks. 2025-11-18 18:22:36 +01:00
ocornut
f145b0cffd Debug Tools: ID Stack Tool: refactor, extract data/code into ImGuiDebugItemPathQuery for reuse. 2025-11-13 18:32:43 +01:00
ocornut
c254db7637 Debug Tools: ID Stack Tool: store ResultsComplete and don't display incomplete paths. 2025-11-13 16:19:27 +01:00
ocornut
5a0c67c4b8 Debug Tools: ID Stack Tool: extracted code into a StackToolGetResultAsPath() function. 2025-11-13 16:15:00 +01:00
ocornut
ec6219752d Fonts: calling ImFontAtlas::Clear() mid-frame without re-adding a font will lead to a more explicit crash. (#9067)
+ reformat Changelog.
2025-11-13 15:54:50 +01:00
ocornut
e60e5bff63 Misc: standardized casing of keyboard mods in comments and demo ("CTRL" -> "Ctrl"). 2025-11-13 15:24:03 +01:00
ocornut
873fe34b31 Debug Tools: ID Stack Tool: preserve first data type, so user of PushOverrideID() e.g. TreeNode() elements don't get demoted from _String to _ID. 2025-11-13 15:05:16 +01:00
ocornut
613cfaf0b4 Tooltips: made BeginTooltipEx() not hide nested tooltips.
It's not typically possible to nest tooltips since BeginTooltipEx() imply ImGuiWindowFlags_NoInputs + following mouse pos + most tooltips would be triggered on hover. But BeginErrorTooltip() bypass that.
2025-11-13 13:47:45 +01:00
ocornut
b0d3c3a674 Drag and Drop: prev/curr storage for DragDropAcceptFlags. ImGuiDragDropFlags_AcceptNoPreviewTooltip test uses DragDropAcceptFlagsPrev for consistency. (#143)
I don't think this would have materialized as a visible bug.
2025-11-06 17:59:01 +01:00
ocornut
e389502ffb Amends comments referring to 1.92.X to refer to 1.92.0. FontAllowUserScaling not marked obsolete anymore. 2025-11-06 16:28:59 +01:00
ocornut
1897248bda Misc: added assert to detect ~ImGuiContext() called without DestroyContext(). (#9051) 2025-11-04 17:55:18 +01:00
Brenton Bostick
a3546b52f8 Various typo fixes (#9042) 2025-11-03 13:26:12 +01:00