ocornut
3a078466a7
Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it.
2024-02-08 16:06:55 +01:00
ocornut
a5e0e90c16
Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact.
2024-02-08 15:44:46 +01:00
ocornut
a06dd7a27b
OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. ( #1497 , #1533 )
...
reopen
2024-02-08 15:02:22 +01:00
ocornut
f104967c68
Comments
2024-02-08 12:10:14 +01:00
ocornut
82eeafc196
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
2024-02-07 22:10:33 +01:00
ocornut
06ce312745
InputText: Internal: added reload from user-buf feature. ( #2890 )
...
Very highly requested feature (#6962 , #5219 , #3290 , #4627 , #5054 , #3878 , #2881 , #1506 , #1216 , #968 ).
Also useful for interactive completion/selection popups (#2057 , #718 )
Based on @kudaba PR. Design for Inputtext V2 should make this obsolete.
2024-02-07 22:04:18 +01:00
ocornut
96839b445e
Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other.
...
See test "inputs_owner_single_mod"
2024-01-25 16:51:07 +01:00
ocornut
7194756370
Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl)
2024-01-25 15:42:19 +01:00
ocornut
8491cf36ad
Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed.
...
Amend fc134f5
2024-01-24 18:53:36 +01:00
ocornut
9176eedf24
Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op.
2024-01-24 18:51:00 +01:00
ocornut
81e0be856a
Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). ( #7090 , #7256 )
2024-01-24 14:27:43 +01:00
ocornut
eb42e164dd
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2024-01-22 19:01:25 +01:00
ocornut
a201af7354
Added SetNextItemShortcut() wip function. ( #456 )
...
Mark widget as hovered. Amend d10641b
.
2024-01-22 18:38:54 +01:00
ocornut
4c2c09450a
Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. ( #456 )
...
Amend d10641b
2024-01-22 18:26:45 +01:00
ocornut
763100b385
Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. ( #7237 )
2024-01-19 18:37:21 +01:00
ocornut
c7edb446ca
Shortcut(): always test ownership.
...
- It doesn't sense to test route without ownership (which may be overrided by code not using routing)
- It also wouldn't be possible to call Shortcut() with _None anyway, since successful routing sets ownership.
Tangential to experiments for #7237
2024-01-19 16:40:24 +01:00
ocornut
1844f903d5
Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut
...
InputText: no need to call SetShortcutRouting() directly.
Tangential to experiments for #7237
2024-01-19 16:22:45 +01:00
ocornut
cab7edd135
Merge branch 'master' into docking
...
# Conflicts:
# imgui_internal.h
2024-01-17 18:38:03 +01:00
ocornut
d7c2a0e38f
Shortcut(): fixed 8323a06
adding _Repeat to all Shortcut() calls.
2024-01-17 18:21:04 +01:00
ocornut
3b828d3701
Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2)
...
Diff not ideal (in Fork it looks like ItemSize is moved) but understandable at a glance.
2024-01-17 17:34:28 +01:00
ocornut
ff5f3aa38b
Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1)
...
Moved KeepAliveID() as well for increased locality.
Adding dummy ItemAdd() placeholder to facilitate diffing (otherwise single commit single diff is a mess).
2024-01-17 17:32:50 +01:00
ocornut
1a48a63446
Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness.
2024-01-17 15:55:36 +01:00
ocornut
5fdcdf7080
Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. ( #456 )
2024-01-16 17:51:14 +01:00
ocornut
80d5cb1ab1
Comments around ImGuiInputFlags.
2024-01-16 16:25:08 +01:00
ocornut
80c83a4277
Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. ( #6798 , #2637 , #456 )
2024-01-16 14:30:43 +01:00
ocornut
cceff4684a
Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() ( #6798 , #2637 , #456 )
2024-01-16 14:30:42 +01:00
ocornut
1cc0eb4d32
Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning.
2024-01-16 12:32:00 +01:00
ocornut
69b64e2b73
Internals: Docking: revert 32a3c61
in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). ( #6798 )
...
The revert doesn't look the same as 32a3c61
as since then we are baking focus roue into NavFocusScopePath().
2024-01-16 11:50:00 +01:00
ocornut
a27f22f0e9
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
# imgui_internal.h
2024-01-16 11:43:36 +01:00
ocornut
46e5f44ec8
Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. ( #6798 , #2637 , #456 )
...
Amend d474836
Begin: tweak clearing of CurrentWindow as FocusWindow() relies on it now.
Addded SetWindowParentWindowForFocusRoute() helper.
2024-01-16 11:39:41 +01:00
ocornut
e0c8c80ada
Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. ( #6798 , #2637 , #456 )
2024-01-15 17:33:47 +01:00
ocornut
4b20a0217e
Internals: add window to FocusScopeStack. ( #6798 )
2024-01-15 17:33:47 +01:00
ocornut
2156db7a07
Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). ( #6798 , #2637 , #456 )
2024-01-15 17:33:23 +01:00
ocornut
dd0efdc637
Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. ( #7226 )
...
Amend 70f2aaff
2024-01-15 17:32:11 +01:00
ocornut
8a3dfda8d0
Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'.
...
Amend 3a90dc38
(#2589 , #2598 , #3108 , #3113 , #3653 , #4642 )
2024-01-15 11:30:52 +01:00
ocornut
32a3c61d00
Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). ( #456 )
2024-01-11 19:48:31 +01:00
ocornut
29809d7220
Version 1.90.2 WIP
2024-01-11 14:37:13 +01:00
ocornut
2dc85e6e43
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_internal.h
2024-01-10 18:34:23 +01:00
ocornut
d6cb3c923d
Version 1.90.1
2024-01-10 18:00:57 +01:00
ocornut
6470e2279e
Debug Tools: DebugRenderKeyboardPreview() scales better.
2024-01-10 17:35:41 +01:00
ocornut
fdf8d02be1
Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. ( #2673 )
2024-01-10 17:33:19 +01:00
ocornut
788bb58b6b
Metrics: Tweak, reorganize tools menu.
2024-01-10 15:12:24 +01:00
ocornut
a5dec42866
Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. ( #5855 )
2024-01-10 15:12:24 +01:00
ocornut
cf02023565
Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set.
...
Amend 8323a06
. Eager to get rid of legacy IMGUI_DISABLE_OBSOLETE_KEYIO stuff: technically it's been two years, may give it another one.
2024-01-09 23:05:53 +01:00
ocornut
69bf3291df
Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set.
...
Amend 8323a06
. Eager to get rid of legacy IMGUI_DISABLE_OBSOLETE_KEYIO stuff: technically it's been two years, may give it another one.
2024-01-09 23:05:45 +01:00
ocornut
ebcfcd8da3
Merge branch 'master' into docking
2024-01-09 22:39:06 +01:00
ocornut
fc2e532f99
Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. ( #456 , #2637 )
...
Took a while to come to this design, but it is flexible and lightweight and allow all decision to be taken a polling location. All three policies are useful.
2024-01-09 15:54:12 +01:00
ocornut
8323a06e6d
Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat.
...
Will make extra sense with next commit where we add ImGuiInputFlags_RepeatUntil options.
2024-01-09 12:09:42 +01:00
ocornut
58261dbe9a
Internals: alter ImGuiInputFlags values to leave room + indent.
2024-01-09 12:06:58 +01:00
ocornut
7f9533b840
ColorPicker: Fixed saturation/value cursor radius not scaling properly.
...
+ Misc docs/comments.
2024-01-08 16:08:12 +01:00
ocornut
278cf1a7bc
Readme: updated binaries. ( #7193 )
...
+ removed two now unnecessary casts.
2024-01-05 16:47:39 +01:00
ocornut
a1b06823fe
Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. ( #1710 , #7194 )
2024-01-04 17:23:30 +01:00
ocornut
e3d7cd665d
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_vulkan.cpp
2024-01-03 18:33:44 +01:00
ocornut
33d18c580b
Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. ( #7175 )
2024-01-03 14:56:21 +01:00
ocornut
718fa0eec6
Happy new year!
2024-01-02 22:03:36 +01:00
David Maas
2523c197bc
Fixed title bar background alpha being used to render viewport-owned windows. ( #7184 , #7181 )
2023-12-31 00:45:25 +01:00
ocornut
f039e69b9c
Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it.
2023-12-21 14:14:39 +01:00
ocornut
4aa81116a5
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# imgui.cpp
2023-12-20 23:57:19 +01:00
ocornut
8340a30d27
Debug: move debug assertion in post-clip code to reduce overhead. ( #4796 and more).
...
Amend c80179921
2023-12-20 16:23:27 +01:00
ocornut
1e1013085b
Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output.
2023-12-20 16:22:35 +01:00
ocornut
0bd6489721
DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space ( #7120 , #7121 )
...
+ extra tweak color ColorEdit4() label. Amend 86512ea
, 3464662
2023-12-19 20:50:17 +01:00
ocornut
0000739c08
Internals: Fixed function name typo.
2023-12-19 20:32:09 +01:00
ocornut
b4c5a83cfe
Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. ( #2625 , #7143 )
2023-12-19 13:55:09 +01:00
ocornut
70f2aaff43
Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent.
2023-12-19 13:48:04 +01:00
Kevin Coghlan
089ed30323
Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. ( #7143 )
2023-12-19 00:30:49 +01:00
ocornut
e265610a0c
Fixes for MSVC code analyzer.
2023-12-18 18:36:01 +01:00
ocornut
f59b54c6f4
Nav: Activation can also be performed with Keypad Enter. ( #5606 )
2023-12-18 18:23:53 +01:00
ocornut
8add6bcb9f
Merge remote-tracking branch 'origin/master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2023-12-14 17:21:15 +01:00
ocornut
6cfe3ddf52
InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. ( #3092 , #5759 , #787 )
2023-12-14 17:15:43 +01:00
ocornut
f6836ff37f
Misc: Rework debug display of texture id in Metrics window (amend) ( #7090 )
...
Amend 96b5b17
2023-12-12 18:24:30 +01:00
ocornut
07dbd46ddd
Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. ( #7090 )
2023-12-12 18:18:52 +01:00
Nahor
86512eac06
DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. ( #7120 , #7121 )
2023-12-12 00:34:18 +01:00
ocornut
03298fe875
Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). ( #7106 )
2023-12-10 12:53:20 +01:00
ocornut
69f524ba95
DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. ( #7095 )
2023-12-08 18:43:29 +01:00
ocornut
5366bd09bf
Scrolling: internal scrolling value is rounded instead of truncated. ( #6677 )
2023-12-07 15:47:18 +01:00
ocornut
1fade35159
DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [ #7095 ]
2023-12-07 14:01:53 +01:00
ocornut
58ca5f6424
Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path.
2023-12-06 16:15:11 +01:00
ocornut
d72e1563d4
Removed CalcListClipping() marked obsolete in 1.86. ( #3841 ) + comments
...
Amend 64daeddf
2023-12-06 15:10:12 +01:00
ocornut
aaf157cfdd
Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80.
...
Amend 9499afdf
and 72de6f336
2023-12-05 17:04:19 +01:00
ocornut
96b5b1724b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui_internal.h
2023-12-05 12:20:16 +01:00
ocornut
d2b0167610
Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS
2023-11-29 14:09:39 +01:00
ocornut
7965494ff3
Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor.
2023-11-28 19:40:38 +01:00
ocornut
f6253b87d0
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
2023-11-28 14:39:46 +01:00
ocornut
6f171a066d
Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. ( #6997 )
2023-11-28 14:28:19 +01:00
Marc Delorme
e07663d9a1
Docking: transform ImGuiContext* ctx = GImGui
to ImGuiContext& g = *GImGui
for consistency ( #5856 )
2023-11-28 14:18:52 +01:00
ocornut
f37f6f67f6
Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. ( #7063 )
2023-11-27 16:33:20 +01:00
ocornut
bce4db00bc
Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. ( #7049 , #4281 , #3272 )
2023-11-22 19:30:16 +01:00
ocornut
7bb0a525c3
Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. ( #7016 , #3466 , #6846 )
2023-11-16 00:00:26 +01:00
ocornut
3d083dbe1a
Version 1.90.1 WIP
2023-11-15 23:53:58 +01:00
ocornut
ce0d0ac829
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2023-11-15 16:08:53 +01:00
ocornut
b81bd7ed98
Version 1.90.0
...
w/ Changelog tweaks.
2023-11-15 15:56:05 +01:00
ocornut
623bff23ce
Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5
)
...
See "window_size_min" test. Waiting for a fuller simplification of this, probably for a future version.
2023-11-15 14:44:01 +01:00
ocornut
f298491a8a
Docs: amend/tweak details about using io.WantCaptureMouse. ( #7012 )
2023-11-15 13:29:37 +01:00
ocornut
afadf74a53
BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names.
...
When the later is fixed we can re-enable this. Essentially reverts 8ee8513
.
2023-11-14 14:23:18 +01:00
ocornut
fe6544622b
SetNextWindowSizeConstraints() clarified parameters, fixed comments. ( #1139 , #3186 , #3270 )
2023-11-13 14:13:17 +01:00
ocornut
450f1d7e7b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2023-11-10 14:56:10 +01:00
ocornut
ab522dd18c
Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. ( #4537 )
2023-11-09 16:44:39 +01:00
ocornut
37ea320b96
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2023-11-07 20:20:41 +01:00
ocornut
0d3b468cb3
BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). ( #1666 , #1395 , #1496 , #1710 ) + Demo
...
Note that child don't report ideal content size to parent so nesting may be difficult.
Note 4e4042b
simplified SkipItems logic.
Note e2035a5
standardizing WindowMinSize application on child
2023-11-07 20:15:32 +01:00
ocornut
44345c2108
Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle.
...
BeginListBox() can't yet expose child flags because coarse clipping require query of stored size (same issue as with adding resize support to Tables).
2023-11-07 20:14:54 +01:00