ocornut
60a1582005
ImStrv: made length() returns an int as it simplify the most common case (of passing %.*s to printf)
2026-07-25 13:49:34 +02:00
璀境石
f5edee41bd
ImStrv: enhanced VS debugger .natvis support. build fixes. (5333, 5906)
2026-07-25 13:49:33 +02:00
ocornut
f7e18d39f2
ImStrv: standardized code doing format copy, optimized ImStrStr
2026-07-25 13:49:33 +02:00
ocornut
b2c097ab06
ImStrv: moved double char* function signatures under #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS blocks + fixed various compiles errors/warnings.
2026-07-25 13:49:32 +02:00
ocornut
df92015712
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-07-25 13:49:03 +02:00
Rokas Kupstys
12710f12c3
ImStrv: Step 1 - change string type to ImStrv in API. (REBASED)
...
(last rebase amend 2024/12/11)
2026-07-25 13:48:48 +02:00
ocornut
01380c5797
Version 1.92.9
2026-07-25 13:28:06 +02:00
ocornut
e722165561
Docs: rework FAQ index, added multi-threading and string-view details.
2026-07-25 12:41:02 +02:00
ocornut
f594633b54
Popups: added bool return value to OpenPopup(), OpenPopupOnItemClick() functions. ( #9429 )
...
Following on 795cf6fcb5 .
2026-07-23 17:49:39 +02:00
ocornut
6f41d13c7a
DrawData: added FrameCount field to facilitate debugging multi-threading issues. ( #8597 , #9136 )
2026-07-20 17:00:32 +02:00
ocornut
548389359c
(Breaking) ImDrawData: marked draw_data->CmdListsCount as obsolete. Use draw_data->CmdLists.Size.
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
2026-07-20 16:58:45 +02:00
ocornut
e4f7c5c722
Disabling ImGuiItemFlags_LiveEditOnInputScalar by default! ( #9476 , #701 )
2026-07-20 14:26:57 +02:00
ocornut
d00a87565b
Fixed build when using IMGUI_DEBUG_HIGHLIGHT_ALL_ID_CONFLICTS + IMGUI_DISABLE_OBSOLETE_FUNCTIONS. ( #9482 )
...
Amend 6df50a0667
2026-07-20 14:11:21 +02:00
ocornut
26b8292635
Split ImGuiItemFlags_LiveEdit into ImGuiItemFlags_LiveEditText, ImGuiItemFlags_LiveEditScalar. Added Demo contents. ( #9476 , #701 )
...
cc #3936 , #3946 , #5904 , #6284 , #8149 , #8065 , #8665 , #9117 , #9299 , #700 , #1351 , #1875 , #2060 , #2215 , #2380 , #2550 , #3083 , #3338 , #3556 , #4373 , #4714 , #4885 , #5184,#5777, #6707 , #6766 , #8004 , #8303 , #8915 , #9308
2026-07-16 15:46:47 +02:00
ocornut
c958f16059
EndGroup: fixed reporting combined Edit when it happens at the same time as tabbing to next ActiveId. ( #9476 , #701 )
2026-07-16 15:46:43 +02:00
ocornut
4853f5c96b
Internals: rename NextItemData.ItemFlags -> ItemFlagsSet
2026-07-16 15:46:40 +02:00
ocornut
18d63b12be
Added ImGuiItemFlags_LiveEdit flag, and much-awaited support for disabling it. ( #9476 , #701 )
...
cc #3936 , #3946 , #5904 , #6284 , #8149 , #8065 , #8665 , #9117 , #9299 , #700 , #1351 , #1875 , #2060 , #2215 , #2380 , #2550 , #3083 , #3338 , #3556 , #4373 , #4714 , #4885 , #5184,#5777, #6707 , #6766 , #8004 , #8303 , #8915 , #9308
2026-07-16 15:39:53 +02:00
ocornut
2392a52660
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 )
...
for _NoLiveEdit it's easier than we don't use IsItemDeactivatedAfterEdit() in InputText()'s `if (g.InputTextDeactivatedState.ID == id)` block.
2026-07-16 15:39:52 +02:00
ocornut
baeea39c1a
Settings: fixed issues caliing ClearWindowSettings() followed by LoadIniSettingsFromMemory().
...
While not done with core, this would be useful to load .ini over a clean slate.
2026-07-15 19:22:44 +02:00
ocornut
addbfa5021
Settings: fixed ConfigIniSettingsAutoDiscardMonths not calling Cleanup ( #9460 , #9471 )
2026-07-15 13:57:48 +02:00
ocornut
da137cbbb0
(Breaking) Drag and Drop: commented out legacy name ImGuiDragDropFlags_SourceAutoExpirePayload. Use ImGuiDragDropFlags_PayloadAutoExpire.
2026-07-08 18:40:29 +02:00
ocornut
68fce9f3bd
Settings: added DiscardAll option to CleanupIniSettings() / ImGuiSettingsCleanupArgs. ( #9460 )
...
+ Demo: tweak for scaling.
2026-07-08 15:03:19 +02:00
ocornut
f903a7e8e2
Settings: fixed Windows not honoring DiscardWhenMissingDate. ( #9460 )
2026-07-07 22:52:47 +02:00
ocornut
112d6d9eab
Settings: added a type name filter to CleanupIniSettings() / ImGuiSettingsCleanupArgs. Amends. ( #9460 )
...
Request hash because storing const char* strings in struct is not entirely zen. Amend 2c49da4 .
2026-07-07 22:30:15 +02:00
ocornut
2c49da44be
Settings: added a type name filter to CleanupIniSettings() / ImGuiSettingsCleanupArgs. ( #9460 )
2026-07-07 22:18:01 +02:00
ocornut
f626c1c793
ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. ( #9337 )
...
ConfigColorPickerRotateTriangle -> !ImGuiColorEditFlags_PickerNoRotate
2026-07-07 16:18:34 +02:00
ocornut
5d56c09432
ColorPicker: added option to fix Saturation/Value triangle in wheel picker. Amends. ( #9337 )
2026-07-07 16:14:13 +02:00
ocornut
aca69173df
(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to io.ConfigColorEditFlags. (Amend 0e479b9, 9f7d808)
...
Apologies, 9f7d808 was extremely flaky.
2026-07-07 16:10:35 +02:00
ocornut
9f7d8086fe
(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to io.ColorEditFlags. (Amend 0e479b9)
...
Reordered IO fields breaks ABI backward compat which was never guaranteed. Occasional breaking is a good way to enforce that lack of guarantee!
2026-07-06 16:02:17 +02:00
ocornut
0e479b9554
(Breaking) ColorEdit: obsoleted SetColorEditOptions() function in favor of poking to style.ColorEditFlags.
2026-07-06 15:34:13 +02:00
ocornut
5fb77dfde1
Settings: added io.ConfigIniSettingsAutoDiscardMonths, trimming tool in in Metrics->Settings + internal CleanupIniSettings(). ( #9460 )
...
cc #437 #2564
2026-07-03 16:36:46 +02:00
ocornut
f7e8343ee9
Settings, IO: added io.ConfigIniSettingsSaveLastUsedDate, platform_io.Platform_SessionDate, IMGUI_DISABLE_TIME_FUNCTIONS(). ( #9460 )
...
cc #437
2026-07-03 16:36:45 +02:00
ocornut
8fc25800e0
Fonts, Context: assert that ImFontAtlas has no other references when destroying an owned atlas. ( #9426 )
2026-07-02 15:02:59 +02:00
ocornut
279d04f7a3
Added GetItemClickedCountWithSingleClickDelay(), io.MouseSingleClickDelay. ( #8337 )
2026-07-01 18:53:29 +02:00
ocornut
0edad6d097
Internals: track WasSelected/WasSoleSelected data for ActiveId. ( #8337 )
2026-07-01 18:53:27 +02:00
ocornut
e408733ecc
BeginMenu(), MenuItem() use NextItemData.Flags + Fixed typo in comment. ( #9456 )
2026-07-01 12:38:32 +02:00
ocornut
ac6f9683b5
Style: added MenuItemRounding, SelectableRounding, ImGuiStyleVar_MenuItemRounding, ImGuiStyleVar_SelectableRounding. ( #7589 , #9375 , #9453 )
2026-06-25 11:43:50 +02:00
ocornut
0e355af09e
RenderNavCursor: take rounding as input. Removed ImGuiNavRenderCursorFlags_NoRounding.
...
Toward #7589
2026-06-24 18:34:30 +02:00
ocornut
26432cfdc6
Style, Nav: scale the NavCursor border thickness when using large values with ScallAllSizes().
2026-06-24 17:57:04 +02:00
ocornut
2f94e7dc13
Tables: add support for ImGuiTableFlags_TrackTopologyChanges ( #9108 , #4046 )
2026-06-24 15:50:17 +02:00
Clownacy
b2377d616d
Nav, Popups: fixed context menu activation with gamepad erroneously testing for _NavEnableKeyboard instead of _NavEnableGamepad. ( #9454 )
...
cc: #8803 , #9270
2026-06-24 13:49:28 +02:00
Cleroth
9a5c070308
Windows: fixed double-click collapse toggle not owning the mouse button. ( #9439 )
2026-06-17 15:21:36 +02:00
ocornut
94a3dcc5fa
Tables: tweaked debug tools + minor data packing in in ImGuiTableColumn
2026-06-15 16:15:39 +02:00
ocornut
2e0f949039
Tables, Debug Log: added IMGUI_DEBUG_LOG_TABLE, ImGuiDebugLogFlags_EventTable. Clicking "Clear settings" calls TableResetSettings() immediately.
2026-06-12 22:12:25 +02:00
ocornut
e5ff2d07d7
Tables: Context-menu: added "Reset" sub-menu and "Reset Visibility" option.
2026-06-11 19:15:55 +02:00
ocornut
c4eaac6d48
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 )
...
# Conflicts:
# docs/CHANGELOG.txt
2026-06-02 19:05:40 +02:00
ocornut
995e4a65ff
(Breaking) TreeNode: commented out legacy name ImGuiTreeNodeFlags_SpanTextWidth which was obsoleted in 1.90.7 (May 2024). Use ImGuiTreeNodeFlags_SpanLabelWidth instead.
2026-06-02 18:37:01 +02:00
ocornut
75f985998b
Using custom ceilf inline impl in ImGui::CalcTextSize().
...
Amend 7b0bf230 , 4622fa4b6 , 12b7977 . (#791 )
2026-05-29 15:59:44 +02:00
ocornut
12b7977555
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.
...
ceilf() is still measurable e.g. ballpark +0.5 for 200k calls.
2026-05-28 19:19:11 +02:00
ocornut
783eba926f
Docs: retroactively amend 1.92.8 changelog about ImDrawFlags_Closed value.
...
Amend 6df50a0
2026-05-28 11:37:37 +02:00