ocornut
a1a7a1bc03
InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. ( #6719 , #2278 )
2023-08-17 13:02:56 +02:00
Rick Huang
a6857ede03
IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. ( #6727 , #2702 )
...
Technically may have had no side-effects unless non-standard alignment used.
2023-08-16 17:50:11 +02:00
ocornut
1e17d59965
Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther().
...
e.g. WebGPU users use a similarly named functions from GLFW backend.
2023-08-15 12:48:46 +02:00
ocornut
d2c7cbcbf9
Misc: Made multiple calls to Render() during the same frame early out faster.
2023-08-14 16:23:04 +02:00
ocornut
ac64b65634
Render: draw dimmed background earlier to match docking code. ( #6716 )
...
Amend f422e78
2023-08-14 16:21:12 +02:00
ocornut
f422e7826f
ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. ( #6716 )
...
Amend dbeeeae59
2023-08-14 16:12:15 +02:00
ocornut
8f5ce73140
Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell.
2023-08-14 13:09:39 +02:00
ocornut
63b6300c39
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-08-08 14:16:13 +02:00
ocornut
bc3c0ce772
Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. ( #1079 , #1131 )
...
Added a stack for this purpose which other features might build on (e.g. #2920 ). However this is currently gated by many tests and not a performance concern, but making stack happen all the time may be undesirable.
2023-08-08 14:07:00 +02:00
ocornut
226923fa7e
Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca
).
...
(#6597 , #6475 , #6167 , #5776 , #5109 , #4763 , #3515 , #1860 )
2023-08-06 20:30:07 +02:00
ocornut
2b1fc6f765
Demo: Demonstrate out-of-order rendering using ImDrawListSplitter.
2023-08-06 20:13:05 +02:00
EggsyCRO
52587c28d6
ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). ( #6657 , #5317 )
2023-08-06 17:22:40 +02:00
Johannes Barthelmes
b7a7d673b9
Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX ( #6675 , #6679 )
2023-08-03 20:13:31 +02:00
ocornut
d6d94d90bf
Version 1.89.9 WIP
...
+ Minor typo fixes
2023-08-03 19:19:21 +02:00
ocornut
f8704cd085
Merge branch 'master' into docking
2023-08-01 13:11:26 +02:00
ocornut
f7eea63872
Version v1.89.8
2023-08-01 12:53:57 +02:00
ocornut
30594c37d0
Merge branch 'master' into docking
2023-08-01 10:22:21 +02:00
ocornut
ab490dc7b8
Fonts: Amends for support for OpenType SVG fonts using lunasvg ( #6591 , #6607 )
2023-08-01 10:18:30 +02:00
Sascha Willems
fa2f1bfbb0
Examples: Vulkan: Fixed Vulkan descriptor pools. ( #6642 )
...
Only use required no. of types and sets
2023-07-29 17:01:27 +02:00
ocornut
eefc9035f0
Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3.
2023-07-29 16:22:30 +02:00
ocornut
79d6f4e211
Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. ( #6653 , #4791 )
2023-07-27 19:45:28 +02:00
septag
f1781c20a3
Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation ( #6626 )
2023-07-25 12:07:32 +02:00
ocornut
f8f805f046
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_dx9.cpp
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_win32.cpp
2023-07-20 23:18:47 +02:00
ocornut
1109de3827
Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f
. ( #6622 , #1485 )
2023-07-20 22:59:15 +02:00
ocornut
db66e33e9e
Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. ( #6619 )
...
Made GetContentRegionMax() fully defer to WorkRect when inside a table container.
2023-07-20 13:26:58 +02:00
ocornut
2bc5d17ac3
Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. ( #5920 , #6619 )
...
Avoid width variation when resizing down a table hosting a child window.
+ shallow tweak to GetContentRegionMax().
2023-07-20 12:01:29 +02:00
scorpion-26
e5977f05d8
Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. ( #5625 , #6609 )
2023-07-18 11:49:43 +02:00
ocornut
d342ec10cc
Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. ( #6610 )
2023-07-18 11:18:58 +02:00
williamhCode
3dc3aef8a4
Backends: WebGPU: fix webgpu changes for Dawn. ( #6602 , #6188 )
2023-07-13 12:42:08 +02:00
ocornut
863ac31f01
Doc: various tweaks + tweak imconfig comments.
2023-07-13 12:38:16 +02:00
ocornut
07d1709ca2
Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. ( #2109 , #1542 )
2023-07-13 11:45:39 +02:00
ocornut
33e13c85e1
Backends: Made all backends sources files support global IMGUI_DISABLE. ( #6601 )
2023-07-13 11:27:52 +02:00
ocornut
0110f4c8cc
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-07-12 18:19:24 +02:00
ocornut
1a9ddd2396
ImDrawData: added AddDrawList() helper function. ( #6406 , #4879 , #1878 )
2023-07-12 18:11:42 +02:00
ocornut
c649aca20a
ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array ( #6406 , #4879 , #1878 ) + deep swap. ( #6597 , #6475 , #6167 , #5776 , #5109 , #4763 , #3515 , #1860 )
...
+ Metrics: avoid misleadingly iterating all layers of DrawDataBuilder as everything is flattened into Layers[0] at this point.
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-07-12 18:11:42 +02:00
ocornut
51b348095c
Docking, Style: resizing separators use same colors as window borders. ( #2522 )
2023-07-11 15:17:54 +02:00
ocornut
b7cdb5a31e
Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. ( #2522 )
...
Rework/revert intent of c1a61d25a
.
2023-07-11 15:01:25 +02:00
ocornut
f4942bca32
Docking: follow to 27c735e
to fix rendering of docked-window scrollbar above outer border. ( #2522 )
2023-07-11 15:01:20 +02:00
ocornut
27c735e3e9
Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. ( #2522 )
...
Rework/revert intent of c1a61d25a
.
2023-07-11 15:00:51 +02:00
ocornut
f6feddd1ee
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2023-07-11 12:44:15 +02:00
ocornut
b79751ebad
Docking: Added DockingSeparatorSize to style: amends ( #3481 , #4721 , #2522 )
...
Add ImGuiStyleVar_DockingSeparatorSize + misc Docking related comments.
2023-07-11 12:43:50 +02:00
ocornut
140726d23f
Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. ( #4857 , #5937 )
2023-07-10 15:10:42 +02:00
ocornut
b32ef809c3
InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false.
2023-07-06 19:32:28 +02:00
ocornut
3349296370
InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. ( #5688 , #2620 )
...
This makes is more obvious that value_change==true when apply_new_text != NULL.
2023-07-06 19:32:01 +02:00
ocornut
6aa408c6af
IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). ( #4921 )
...
cc #2425 #1153 #1600
2023-07-06 15:55:17 +02:00
ocornut
9a15730c2a
Demo: better showcase use of SetNextItemAllowOverlap(). ( #6574 , #6512 , #3909 , #517 )
...
+ Merge some shallow changes from range-select branch.
2023-07-05 14:19:04 +02:00
ocornut
3fe4319314
Version 1.89.8 WIP
2023-07-05 14:17:46 +02:00
ocornut
dc3e531ff2
Merge branch 'master' into docking
2023-07-04 16:22:25 +02:00
ocornut
d4ddc46e77
InputText: Fixed a crash on deactivating a ReadOnly buffer. ( #6570 , #6292 , #4714 )
...
This will be part of 1.89.7 Tagged relase.
2023-07-04 16:20:51 +02:00
ocornut
40aac5875a
Changelog amends
2023-07-04 15:48:42 +02:00
ocornut
677c7b2258
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# docs/CHANGELOG.txt
# docs/TODO.txt
2023-07-04 14:58:03 +02:00
ocornut
cb9015e254
Version 1.89.7
2023-07-04 14:56:09 +02:00
ocornut
121072cfe6
Backends: Vulkan: Amend for support for dynamic_rendering ( #5446 , #5037 )
...
Simplified for master branch.
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2023-07-04 14:16:28 +02:00
ocornut
64172685d6
InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. ( #6565 , #6566 , #3615 )
2023-07-03 11:58:17 +02:00
ocornut
a02315e1c4
Combo: Made simple/legacy Combo() function not returns true when picking already selected item. ( #1182 )
2023-06-28 15:47:10 +02:00
ocornut
a88e5be7f4
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
2023-06-28 14:56:33 +02:00
ocornut
6137443d24
Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. ( #6512 , #3909 , #517 )
...
This allows DragXXX, SliderXXX, PlotXXX etc to honor SetNextItemAllowOverlap().
2023-06-28 14:42:14 +02:00
ocornut
10c7709f30
Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., ( #6512 , #3909 , #517 )
2023-06-28 14:40:47 +02:00
ocornut
8439a73645
Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. ( #6512 , #3909 , #517 )
...
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
2023-06-28 14:40:47 +02:00
ocornut
51f564eea6
(Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). ( #6512 , #3909 , #517 )
...
+ Internals: Renamed 'ImGuiButtonFlags_AllowItemOverlap' to 'ImGuiButtonFlags_AllowOverlap' without redirection.
2023-06-28 14:37:05 +02:00
ocornut
06f5b46133
Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. ( #6512 , #3909 , #517 )
2023-06-27 15:46:35 +02:00
ocornut
d5d4d709c7
Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable().
...
Ensure DragXXX, SliderXXXX, InputText, PlotXXX follow same logic. Amend 251f178a6
, a33f0d1f7
2023-06-27 14:44:39 +02:00
ocornut
3ec128c5fd
Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. ( #6512 , #3909 )
...
Essentially we are going to remove calls to SetItemAllowOverlap() and standardize the fact that only 'HoveredId == id' test from it is performed.
# Conflicts:
# imgui_widgets.cpp
2023-06-26 19:08:10 +02:00
ocornut
0a53b45858
CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. ( #6549 )
2023-06-26 11:15:55 +02:00
ocornut
6b01114057
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
2023-06-23 16:04:13 +02:00
ocornut
66c09fc05b
Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1.
...
Part 1: Add counters. Amend logs.
Refer to "viewport_owner_change_1" and "viewport_owner_change_2" in ImGuiTestSuite.
2023-06-23 15:49:45 +02:00
ocornut
7d81a166f9
Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound.
2023-06-23 15:49:45 +02:00
ocornut
6b2e03c5b1
GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set.
2023-06-22 22:03:02 +02:00
ocornut
e4aeef4b9f
Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed.
2023-06-21 15:34:51 +02:00
ocornut
94c46d7486
InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. ( #5688 , #2620 )
2023-06-21 14:20:13 +02:00
ocornut
cb5542bce5
Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. ( #6539 , #6333 )
2023-06-20 15:30:52 +02:00
ocornut
1450d23b60
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# docs/CHANGELOG.txt
# imgui.cpp
2023-06-20 15:12:09 +02:00
ocornut
9214c28aad
IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags.
2023-06-20 15:04:15 +02:00
ocornut
e7a4327eb8
IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary.
2023-06-20 15:04:14 +02:00
ocornut
b60acfa87d
Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section.
2023-06-20 15:04:14 +02:00
ocornut
0f72652c2d
IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. ( #1485 )
2023-06-20 15:04:14 +02:00
ocornut
b3b8cbd001
IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. ( #1485 )
...
Update demo accordingly.
2023-06-20 15:04:14 +02:00
ocornut
d4b94bd65b
(Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. ( #1485 )
2023-06-20 15:04:13 +02:00
ocornut
f09ef23ae6
IsItemHovered, Tooltips: Tweak default delay again. ( #1485 )
...
Amend eec344c
2023-06-20 14:43:38 +02:00
ocornut
b9db5c566b
Backends: Win32: Added support for updating ParentViewportID after viewport creation.
...
This tends to be desirable for applicaton manipulating this value via ImGuiWindowClass::ParentViewportID.
I thought it would be a simple call to SetParent(), it's only slightly more complicated but added comments about it.
2023-06-15 11:26:27 +02:00
ocornut
89d3dabf2e
Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). ( #4317 )
...
Fix FindBlockingkModal() which didn't do what the comments say for the first 2 lines.
This is also fixing a crash in FindBlockingModal() which can only happen with dock node, see "window_popup_nested_interruptions_2" and viewport_platform_focus_4" tests.
The dock-node related crash comes from the fact that automatic dock node and implicit debug window don't share a common ancestor, so ParentWindowInBeginStack ends up NULL before the loop had a chance to find a match.
2023-06-14 21:58:28 +02:00
ocornut
eec344cc1e
Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). ( #1485 )
...
+ Tweaked default value of io.HoverDelayNormal from 0.30 to 0.35.
2023-06-14 18:29:49 +02:00
ocornut
534340cd88
Tooltips: Tweak default offset for non-drag and drop tooltips.
2023-06-13 15:27:46 +02:00
ocornut
e95d66faa8
Clipper: Rework inner logic to allow functioning with a zero-clear constructor. ( #5856 )
2023-06-13 14:55:02 +02:00
ocornut
ef07ddf087
Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments.
...
Moved from compile-time to runtime flag. Applied docking specific change to this cherry-picked commit.
# Conflicts:
# docs/CHANGELOG.txt
2023-06-13 11:55:21 +02:00
ocornut
9c16976749
Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments.
...
Moved from compile-time to runtime flag. Note: commit in master is not particularly useful. Docking version will add stuff.
2023-06-13 11:54:29 +02:00
ocornut
fa5d2656b0
Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one
...
+ Add more debug log + Display DockOrder in metrics.
2023-06-13 11:37:35 +02:00
ocornut
3cc9d2051a
Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. ( #6516 , #5725 , #5961 , #5975 )
...
Amend fe0a24f
2023-06-13 11:24:09 +02:00
ocornut
3f63cee4c1
Docking: Fixed dragging from title-bar empty space ( #5181 , #2645 )
...
This would need a test in ImGuiTestSuite.
2023-06-12 15:33:20 +02:00
ocornut
884e3fd21f
Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. ( #6491 , #6189 , #6114 )
2023-06-12 11:58:17 +02:00
ocornut
dec082ff97
Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. ( #6375 , #6508 )
...
Amend dd9db5e8
+ 39f7248d4
2023-06-12 11:45:11 +02:00
ocornut
0664877998
Merge branch 'master' into docking
2023-06-09 14:02:19 +02:00
ocornut
4fab72b40e
BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. ( #6503 )
2023-06-09 14:01:21 +02:00
ocornut
61ebb37843
Version 1.89.7 WIP
2023-06-01 11:22:43 +02:00
ocornut
823a1385a2
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdlrenderer.h
# docs/CHANGELOG.txt
# imgui.cpp
2023-05-31 14:51:56 +02:00
ocornut
5319d1cffa
Version 1.89.6
2023-05-31 14:47:32 +02:00
ocornut
075b975fed
Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. ( #6480 )
2023-05-31 14:44:29 +02:00
ocornut
b476184574
Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. ( #6286 )
2023-05-30 20:36:07 +02:00
ocornut
88e7d773df
Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' ( #6286 )
2023-05-30 20:11:19 +02:00
ocornut
3418d50949
Viewports: Fixes erroneous popup closure on closing a previous popup. ( #6462 , #6299 )
...
Avoid applying imgui-side focus when focus change is due to a viewport destruction.
2023-05-30 17:09:27 +02:00