ocornut
b3ba6b3095
Added io.ConfigNavSwapGamepadButtons to swap Activate/Cancel (A<>B) buttons, to match the typical "Nintendo/Japanese consoles" button layout when using Gamepad navigation. ( #787 , #5723 )
2024-07-26 14:07:29 +02:00
ocornut
3552df562e
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2024-07-25 16:41:56 +02:00
ocornut
b20f62b162
Obsoleted GetContentRegionMax().
2024-07-25 16:20:44 +02:00
ocornut
4227402b2f
Internals: removed GetContentRegionMaxAbs() which was only meaningfully used in place of GetContentRegionAvail().
2024-07-25 16:10:18 +02:00
ocornut
055b2e80fb
Moved everyone's best friend GetContentRegionAvail() to a more prominent position.
2024-07-25 16:09:46 +02:00
ocornut
aad86b8756
Obsoleted GetWindowContentRegionMin() and GetWindowContentRegionMax().
...
You should never need those functions. You can do everything with GetCursorScreenPos() and GetContentRegionAvail().
2024-07-25 15:53:55 +02:00
ocornut
55f54fa512
Internals: comment out obsolete g.ActiveIdUsingNavInputMask obsoleted two years ago. ( #4921 , #4858 , #787 , #1599 , #323 )
...
Use SetKeyOwner(ImGuiKey_Escape, g.ActiveId); instead. Amend 8b8a61bd
2024-07-25 15:11:08 +02:00
ocornut
e3da939b86
Groups, Tables: fixed EndGroup() failing to correctly capture current table occupied size. ( #7543 )
...
See "layout_group_endtable" test.
2024-07-24 18:41:51 +02:00
ocornut
b67b375ae6
Debug Log: fixed incorrect checkbox layout when partially clipped., doesn't parse 64-bits hex value as ImGuiID lookups.
2024-07-24 16:04:10 +02:00
ocornut
4d8c56c813
Internals, TreeNode: indent all render block into its own scope (aim is to add a is_visible test there later)
2024-07-24 14:03:59 +02:00
ocornut
3fab2bb7be
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
2024-07-22 19:41:39 +02:00
ocornut
c3dca77a19
Demo: rework Property Editor.
2024-07-22 14:49:16 +02:00
Thomas Stehle
da36336321
TabBar, Style: added style option for the size of the Tab-Bar Overline ( #7804 )
...
Amend 21bda2e
.
2024-07-22 10:58:16 +02:00
ocornut
02cc7d451c
Merge branch 'master' into docking
...
# Conflicts:
# imgui_demo.cpp
2024-07-19 18:49:25 +02:00
ocornut
f9cda1fa24
Inputs: added SetItemKeyOwner(ImGuiKey key) in public API. ( #456 , #2637 , #2620 , #2891 , #3370 , #3724 , #4828 , #5108 , #5242 , #5641 )
2024-07-19 18:39:07 +02:00
ocornut
fd77815f9f
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2024-07-18 18:22:26 +02:00
ocornut
7814518049
MultiSelect: ImGuiSelectionBasicStorage: optimized for smaller insertion amounts in larger sets + fix caling batch select with same value.
2024-07-18 18:19:22 +02:00
ocornut
2697cfe354
MultiSelect: Box-Select: uses SetActiveIdUsingAllKeyboardKeys() to avoid nav interference, much like most drag operations.
2024-07-18 18:19:22 +02:00
ocornut
c07864f64a
MultiSelect: ImGuiSelectionBasicStorage: move function bodies to cpp file.
...
+ make ImGuiStorage::BuildSortByKey() less affected by msvc debug mode.
2024-07-18 18:19:21 +02:00
ocornut
e7a734f78d
MultiSelect: added ImGuiMultiSelectFlags_NoAutoSelect, ImGuiMultiSelectFlags_NoAutoClear features + added Checkbox Demo
...
Refer to "widgets_multiselect_checkboxes" in imgui_test_suite.
2024-07-18 18:19:19 +02:00
ocornut
f3d77d8e71
MultiSelect: Box-Select: Further refactor to extra mode code away from multi-select function into box-select funcitons.
2024-07-18 18:19:18 +02:00
ocornut
5d9de14493
MultiSelect: Box-Select: Refactor: Renames.
...
Split into two commits to facilite looking into previous one if needed.
2024-07-18 18:19:18 +02:00
ocornut
75bac1aac6
MultiSelect: Box-Select: Refactor into its own structure, designed for single-instance but closer to being reusable outside Multi-Select.
...
Kept same member names.
2024-07-18 18:19:18 +02:00
ocornut
15391762dd
MultiSelect: Box-Select: Added ImGuiMultiSelectFlags_BoxSelect2d support. Enabled in Asset Browser. Selectable() supports it.
2024-07-18 18:19:18 +02:00
ocornut
1ac469b50f
MultiSelect: Box-Select: Fixed holes when using with clipper (in 1D list.)
...
Clipper accounts for Selectable() layout oddity as BoxSelect is sensitive to it.
Also tweaked scroll triggering region inward.
Rename ImGuiMultiSelectFlags_NoBoxSelectScroll to ImGuiMultiSelectFlags_BoxSelectNoScroll.
Fixed use with ImGuiMultiSelectFlags_SinglaSelect.
2024-07-18 18:19:18 +02:00
ocornut
0af6fbb51d
MultiSelect: added support for nested/stacked BeginMultiSelect().
...
Mimicking table logic, reusing amortized buffers.
2024-07-18 18:19:17 +02:00
ocornut
5941edd9f7
MultiSelect: added support for recovery in ErrorCheckEndWindowRecover().
2024-07-18 18:19:17 +02:00
ocornut
a6adfb2b49
MultiSelect: added missing call on Shutdown(). Better reuse selection buffer.
2024-07-18 18:19:16 +02:00
ocornut
c3998b70cc
MultiSelect: clarified purpose and use of IsItemToggledSelection(). Added assert. Moved to multi-selection section of imgui.h.
2024-07-18 18:19:16 +02:00
ocornut
af83a3eea4
MultiSelect: clear selection when leaving a scope with a nav directional request.
...
May need to clarify how to depends on actions being performed (e.g. click doesn't).
May become optional?
2024-07-18 18:19:15 +02:00
ocornut
9223ffc255
MultiSelect: (Breaking) BeginMultiSelect() doesn't need two last params maintained by users. Moving some storage from user to core. Proper deletion demo.
2024-07-18 18:19:14 +02:00
ocornut
11bcae1ebd
MultiSelect: refactor before introducing persistant state pool and to facilitate adding recursion + debug log calls.
...
This is mostly the noisy/shallow stuff committed here, to get this out of the way.
2024-07-18 18:19:13 +02:00
omar
9c7183dd04
MultiSelect: Transition to use FocusScope bits merged in master.
...
Preserve ability to shift+arrow into an item that is part of FocusScope but doesn't carry a selection without breaking selection.
2024-07-18 18:19:12 +02:00
ocornut
8947c35fa1
MultiSelect: Removed SelectableSpacing as I'm not sure it is of use for now (history insert)
2024-07-18 18:19:11 +02:00
omar
554db6bc0f
MultiSelect: WIP range-select ( #1861 ) (rebased six millions times)
2024-07-18 18:19:11 +02:00
ocornut
0e485a2109
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
# imgui_widgets.cpp
2024-07-18 17:56:27 +02:00
ocornut
8bab3eab6a
Clipper: added SeekCursorForItem() function, for use when using ImGuiListClipper::Begin(INT_MAX). ( #1311 )
...
Tagging #3609 just in case we made a mistake introducing a regression (but tests are passing and have been extended).
2024-07-17 18:16:06 +02:00
ocornut
74a1854db9
Nav, Demo: comments.
2024-07-17 17:03:22 +02:00
ocornut
0e4dcfa552
Obsoleted PushTabStop()/PopTabStop() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_NoTabStop.
2024-07-15 18:57:46 +02:00
ocornut
3de75138d1
(Breaking) Renamed ImGuiSelectableFlags_DontClosePopups to ImGuiSelectableFlags_NoAutoClosePopups. ( #1379 , #1468 , #2200 , #4936 , #5216 , #7302 , #7573 )
2024-07-15 18:46:34 +02:00
ocornut
0de88a928d
Added ImGuiItemFlags_AutoClosePopups as a replacement for internal's ImGuiItemFlags_SelectableDontClosePopup. ( #1379 , #1468 , #2200 , #4936 , #5216 , #7302 , #7573 )
2024-07-15 18:46:34 +02:00
ocornut
b4ca869c40
(Breaking) Obsoleted PushButtonRepeat()/PopButtonRepeat() in favor of using new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_ButtonRepeat.
2024-07-15 18:38:18 +02:00
ocornut
5ea96c15cd
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_win32.cpp
2024-07-15 11:21:18 +02:00
Cyao
126569ad5b
Fix definition check ( #7793 )
2024-07-14 12:26:59 +02:00
cfillion
1ec1f7a3de
Fixed Unix version of PlatformOpenInShellFn_DefaultImpl. ( #7772 , #7660 )
...
+ Enable on non-iPhone macOS builds
2024-07-07 21:49:12 +02:00
ocornut
2d0baaabe6
TreeNode: rename/rework ImGuiNavTreeNodeData system to be usable by more features. ( #2920 , #1131 , #7553 )
...
Reworked to it is easier during TreeNode code to request extra data to be stored.
2024-07-03 18:59:26 +02:00
ocornut
0a73c6ec3f
Misc tweaks, comments.
2024-07-03 18:02:59 +02:00
ocornut
527b2c45af
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_sdl2.cpp
2024-07-02 19:05:36 +02:00
ocornut
0ebf49b4c1
IO: amend PlatformOpenInShellFn specs to return a bool. ( #7660 )
...
Amend 8f36798
2024-07-02 19:03:40 +02:00
ocornut
3f61da7e8b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdl3.h
# imgui.cpp
# imgui.h
# imgui_internal.h
2024-07-02 17:48:38 +02:00
ocornut
05a4f28059
Internals: added FontScale storage (amend 0f63d3e
).
2024-07-02 17:45:12 +02:00
ocornut
5496050f5f
Added TextLink(), TextLinkOpenURL() hyperlink widgets. ( #7660 )
2024-07-02 17:21:44 +02:00
ocornut
0f63d3e916
Internals: added FontScale storage.
2024-07-02 17:21:10 +02:00
ocornut
dadf9cd039
IO: disable default io.PlatformOpenInShellFn() implementation on iPhone, as compiler errors that system() is not available on iOS.
2024-07-02 16:23:46 +02:00
ocornut
43925b9fa4
Build fix for non Windows platforms.
2024-07-02 16:10:54 +02:00
ocornut
ddd4c9d6b9
Commented out obsolete ImGuiModFlags and ImGuiModFlags_XXX values (renamed to ImGuiKeyChord and ImGuiMod_XXX in 1.89). ( #4921 , #456 )
2024-07-02 16:03:18 +02:00
ocornut
fb799bba7f
(Breaking) IO, IME: renamed platform IME hook io.SetPlatformImeDataFn() -> io.PlatformSetImeDataFn() and added explicit context.
2024-07-02 15:48:32 +02:00
ocornut
8f36798035
IO: added io.PlatformOpenInShellFn handler to open a link/folder/file in OS shell, added IMGUI_DISABLE_DEFAULT_SHELL_FUNCTIONS. ( #7660 )
2024-07-02 15:36:08 +02:00
ocornut
7e0b3b9caf
Debug Log: Added "Configure Outputs.." button. ( #5855 )
2024-07-02 12:10:33 +02:00
ocornut
a62794359a
Debug Tools: Added IMGUI_DEBUG_LOG(), ImGui::DebugLog() in public API. ( #5855 )
2024-07-02 12:00:55 +02:00
ocornut
84cc72f372
Version 1.91.0 WIP
2024-07-01 19:02:42 +02:00
ocornut
3369cbd277
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
2024-07-01 17:10:12 +02:00
ocornut
cb16be3a3f
Version 1.90.9
2024-07-01 17:03:21 +02:00
ocornut
c554c402d3
IO: do not claim io.WantCaptureMouse=true on the mouse release frame of a button which was pressed over void. ( #1392 )
2024-07-01 16:13:38 +02:00
ocornut
dd5c30d2d7
Disabled: Reworked 1.90.8 behavior of Begin() not inheriting current BeginDisabled() state. Only tooltip are clearing that state. ( #211 , #7640 )
2024-07-01 14:32:11 +02:00
ocornut
3fec562da1
Merged GetBackgroundDrawList()/GetForegroundDrawList() and GetBackgroundDrawList(ImGuiViewport* viewport)/GetForegroundDrawList(ImGuiViewport* viewport) api entry points.
2024-06-28 16:16:51 +02:00
ocornut
138d9d0c21
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
2024-06-28 16:03:49 +02:00
ocornut
0582f7678a
Nav: store NavJustMovedToIsTabbing + shuffle a few nav related fields.
...
(for usage by multi-select)
2024-06-28 11:35:09 +02:00
ocornut
77d582fa37
Windows: BeginChild(): fixed a glitch when during a resize of a child window which is tightly close to the boundaries of its parent. ( #7706 )
2024-06-27 18:04:24 +02:00
ocornut
fbb903e158
Inputs: fixed using Shortcut() or SetNextItemShortcut() within a disabled block bypassing the disabled state. ( #7726 )
2024-06-27 16:37:33 +02:00
ocornut
a028c2df2a
Windows, Menus: Fixed an issue where the size of sub-menu in their own viewport would be erroneously clamped to the size of main viewport. ( #7730 )
...
Amend #7287 , #7063
2024-06-27 16:05:25 +02:00
ocornut
dbffb702f8
ImGuiStorage: tweak impl for BuildSortByKey().
2024-06-26 18:57:14 +02:00
ocornut
10a5a857f5
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_win32.cpp
# imgui.h
2024-06-26 14:54:01 +02:00
ocornut
eb1cc4b8b4
Metrics/Debugger: Browsing a Storage perform hover lookup on identifier.
2024-06-26 12:17:22 +02:00
ocornut
7237d3e5c3
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
# imgui_internal.h
2024-06-21 16:18:22 -07:00
cfillion
755bf2b8c2
(Breaking) Move ImGuiWindowFlags_NavFlattened to ImGuiChildFlags_NavFlattened. ( #7687 )
2024-06-21 16:00:57 -07:00
ocornut
2c8cc58fd1
Internals: storing HoveredWindowBeforeClear for use by multi-context compositor drag and drop propagation.
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2024-06-21 14:46:07 -07:00
ocornut
7f20a4b041
Nav: CTRL+Tab overlay display context name if any.
2024-06-21 10:17:55 -07:00
ocornut
e3971079cf
IO: added ImGuiConfigFlags_NoKeyboard for consistency and convenience. ( #4921 )
...
# Conflicts:
# imgui.h
# imgui_demo.cpp
2024-06-21 10:17:44 -07:00
ocornut
8067d05f74
IO: added ClearInputMouse(). made ClearInputKeys() not clear mouse data. ( #4921 )
...
Amend 6aa408c6a
2024-06-21 10:16:54 -07:00
ocornut
66ed89b0ca
Docking: mark window payload as not cross-context.
2024-06-20 17:48:54 -07:00
ocornut
e863f89d39
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-06-20 17:47:22 -07:00
ocornut
21581cf70c
Fixed build warning.
2024-06-20 17:45:09 -07:00
ocornut
77d9f80754
Drag and Drop: Added ImGuiDragDropFlags_PayloadNoCrossContext and ImGuiDragDropFlags_PayloadNoCrossProcess flags.
2024-06-20 11:37:10 -07:00
ocornut
8c318dc770
Drag and Drop: (Breaking) renamed ImGuiDragDropFlags_SourceAutoExpirePayload to ImGuiDragDropFlags_PayloadAutoExpire. ( #1725 , #143 )
2024-06-20 11:36:45 -07:00
ocornut
50709454b3
Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern assume a mouse button being pressed. ( #143 )
2024-06-19 19:08:20 -07:00
ocornut
413c056359
Drag and Drop: comments, debug log entries.
2024-06-19 18:01:31 -07:00
ocornut
37c243bb35
Internals: added ImGuiContext::ContextName optionally used by debug log and to facilitate debugging.
2024-06-19 17:55:43 -07:00
ocornut
8c517fee35
Drag and Drop: Fixes an issue when elapsing payload would be based on last payload frame instead of last drag source frame.
2024-06-19 14:42:27 -07:00
ocornut
32a037c030
Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern. ( #143 )
...
Amend 0c6e260f7
2024-06-19 13:37:10 -07:00
ocornut
2ebb4e931d
TabBar, Style, Docking: amend 21bda2e
for docking branch.
2024-06-18 17:47:22 -07:00
ocornut
3e7f1d42db
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
# imgui_draw.cpp
2024-06-18 17:45:17 -07:00
ocornut
21bda2ed99
TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline and ImGuiCol_TabSelectedOverline, ImGuiCol_TabDimmedSelectedOverline.
2024-06-18 17:41:43 -07:00
ocornut
1b9593e889
Style: (Breaking) renamed ImGuiCol_TabActive -> ImGuiCol_TabSelected, ImGuiCol_TabUnfocused -> ImGuiCol_TabDimmed, ImGuiCol_TabUnfocusedActive -> ImGuiCol_TabDimmedSelected.
...
Amend #261 , #351
2024-06-18 17:37:29 -07:00
ocornut
b902fa4c44
IO: do not disable io.ConfigWindowsResizeFromEdges when ImGuiBackendFlags_HasMouseCursors is not set by backend.
...
Amend 42bf149ac
2024-06-11 14:15:13 +02:00
ocornut
8caf7afbad
Internals: made ImLowerBound() accessible in internals + take a span. + rearrange child/popup/tooltips section.
...
Because upcoming rework of ImGuiSelectionBasicStorage will want to do a lower bound on a span.
2024-06-11 11:52:51 +02:00
ocornut
22d65c7949
Removed old nested structure: renaming ImGuiStorage::ImGuiStoragePair type to ImGuiStoragePair (simpler for many languages).
2024-06-10 19:33:06 +02:00
ocornut
d46a0aa069
Internals: renamed HoveredIdDisabled to HoveredIdIsDisabled for consistency.
2024-06-10 13:59:46 +02:00
ocornut
7260bb51cf
Version 1.90.9 WIP
2024-06-07 16:57:01 +02:00
ocornut
6d948ab47e
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-06-06 17:52:55 +02:00
ocornut
6f7b5d0ee2
Version 1.90.8
2024-06-06 17:45:40 +02:00
ocornut
67d886fd63
Removed ImGuiButtonFlags_MouseButtonDefault_.
2024-06-06 17:25:16 +02:00
ocornut
2a418f054d
InputText: reordered all flags. (ABI breaking)
2024-06-06 17:23:56 +02:00
ocornut
0561d708ba
Modals, Popups: fixed an issue preventing to close a popup opened over a modal by clicking over void. ( #7654 )
2024-06-05 15:55:01 +02:00
jungnitz
b95b2b4574
Fixed (harmless) incorrect order of arguments in IsKeyChordPressed ( #7657 )
2024-06-05 14:45:36 +02:00
korenkonder
209edcc247
Fixed incorrect order of arguments in IsMouseClicked(). ( #7657 , #456 )
...
Amend 85513de24
2024-06-04 17:29:59 +02:00
ocornut
fdc084f532
Merge branch 'master' into docking
2024-06-03 19:08:37 +02:00
ocornut
6cefd4fd88
Scrollbar: fixed miscalculation of vertical scrollbar visibility when required solely by the presence of an horizontal scrollbar. ( #1574 )
...
Initially fixed by 2d9d7a10c
, and broken back by a0994d74c2
(v1.71, wow).
2024-06-03 16:41:29 +02:00
ocornut
9aec6d7217
Internals: Added ItemUnclipByLog for use by ItemAdd(), as we expected to add more.
2024-05-31 21:38:06 +02:00
ocornut
0fce21e890
Internals: Disable 0xCC stack fill for ItemAdd()/ItemSize().
2024-05-31 21:38:02 +02:00
ocornut
854e21d4b4
Disabled: move field to ImGuiWindowStackData. ( #7640 )
...
Amend f953ebf
2024-05-31 18:24:55 +02:00
ocornut
f953ebf9ca
Disabled: nested tooltips or other non-child window within a BeginDisabled() block disable the disabled state. ( #211 , #7640 )
2024-05-31 18:13:25 +02:00
ocornut
97a1111b94
Drag and Drop: tweaked BeginDragDropSource() to remove indent. Added debug log.
2024-05-29 18:48:32 +02:00
ocornut
661c388515
Debug Log, Test Engine: avoid duplicate carriage return when using ImGuiDebugLogFlags_OutputToTestEngine. ( #5855 )
2024-05-29 18:48:28 +02:00
ocornut
868f444620
Debug: extracted debug log 0xXXXXXXX scanning into a helper function. ( #5855 )
2024-05-29 18:48:25 +02:00
ocornut
222dd775fc
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2024-05-28 17:11:57 +02:00
ocornut
ed9eb880b5
Windows: Fixed altering FramePadding mid-frame not correctly affecting logic responsible for honoring io.ConfigWindowsMoveFromTitleBarOnly. ( #7576 , #899 )
...
Latching TitleBarHeight, MenuBarHeight in window.
2024-05-28 15:35:36 +02:00
ocornut
1f9fc382c3
Version 1.90.8 WIP
...
Tidying up todo.txt
2024-05-28 10:09:31 +02:00
ocornut
2db79d0868
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-05-27 15:47:30 +02:00
ocornut
00ad3c65bc
Version 1.90.7
2024-05-27 15:47:04 +02:00
ocornut
f814ef816f
Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments
2024-05-27 14:41:02 +02:00
ocornut
86931393a3
Shortcuts: Revert "SetShortcutRouting: require explicit routing. ( #456 )
...
This reverts commit a689fa262a
.
2024-05-24 17:59:42 +02:00
ocornut
975beafafd
Merge branch 'master' into docking
2024-05-24 17:23:58 +02:00
ocornut
7832e6a70e
Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. ( #456 , #7618 )
2024-05-24 17:10:11 +02:00
ocornut
85d982011e
Shortcuts: fixed priority of route calculation (higher first). ( #456 , #7618 )
2024-05-24 17:02:10 +02:00
ocornut
fee0210592
Merge branch 'master' into docking
2024-05-24 16:09:29 +02:00
ocornut
ce4e210dcb
Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. ( #456 )
2024-05-24 16:07:58 +02:00
ocornut
5ce3d29955
Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. ( #456 )
2024-05-24 15:44:59 +02:00
ocornut
650cb51bf1
Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. ( #456 , #7618 )
...
Amend ef9d525
2024-05-24 15:27:48 +02:00
ocornut
ef9d525f02
Shortcuts: added ImGuiInputFlags_RouteActiveItem. ( #456 , #7618 ) + rearrange Changelog
2024-05-24 15:07:43 +02:00
ocornut
16b72f2d21
Comments
2024-05-24 14:21:50 +02:00
ocornut
29439bdd27
Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. ( #1710 )
...
Calculation incorrectly didn't always account for scrollbar as it assumed the other axis would also be auto-fit.
2024-05-24 12:31:40 +02:00
ocornut
c150ad50c4
Shortcuts: claim mods ownership once pressed. ( #456 , #2637 , #2620 , #2891 , #3370 , #3724 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 18:14:16 +02:00
ocornut
7c71e66370
Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. ( #456 )
2024-05-23 17:33:16 +02:00
ocornut
5ecef2f321
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_win32_directx10/main.cpp
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# imgui.cpp
2024-05-23 17:25:02 +02:00
ocornut
d5a600e9c6
Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location.
2024-05-23 17:22:44 +02:00
ocornut
0eb025f484
Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. ( #456 )
2024-05-23 17:17:54 +02:00
ocornut
a689fa262a
SetShortcutRouting: require explicit routing. ( #456 )
2024-05-23 17:09:48 +02:00
ocornut
c06e6340cd
Shortcuts: added ImGuiInputFlags_Tooltip. ( #456 )
2024-05-23 16:58:14 +02:00
ocornut
77e4171894
Shortcuts: added flags to SetNextItemShortcut(). ( #456 )
2024-05-23 16:57:19 +02:00
ocornut
197f8904fe
Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. ( #456 )
...
Unsure why filter in ItemHandleShortcut(), will probably find out soon enough.
2024-05-23 16:57:19 +02:00
ocornut
fc512a2474
Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. ( #456 , #2637 )
2024-05-23 16:57:03 +02:00
ocornut
85513de247
Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). ( #456 )
...
For several reasons those changes makes sense. They are being made because making some of those API public.
Only past users of imgui_internal.h with the extra parameters will be affected.
Added asserts for valid flags in various functions to detect _some_ misuses, BUT NOT ALL.
Amend 4448d975
(#456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 16:57:03 +02:00
ocornut
900b29055c
Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). ( #456 )
...
Amend 4448d975
(#456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 16:57:03 +02:00
ocornut
55748cdbe1
Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit.
...
Amend 4448d975
(#456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
2024-05-23 16:57:03 +02:00
ocornut
36ffdd69d3
Merge remote-tracking branch 'origin/master' into docking
2024-05-21 19:01:06 +02:00
ocornut
9ebab255d2
Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. ( #7611 )
2024-05-21 19:00:25 +02:00
ocornut
aa725ca79d
Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_
2024-05-21 12:28:47 +02:00
ocornut
28a283b460
Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine.
2024-05-21 11:06:40 +02:00
Eugene Sandulenko
aa5a6098ee
Fixed typos in comments ( #7599 )
2024-05-18 17:10:36 +02:00
ocornut
d39ca33b63
Fixed false positive with PVS-Studio.
...
Amend ae8218a
.
2024-05-17 17:13:55 +02:00
ocornut
ae8218a3ea
Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. ( #456 )
...
Rename IsNamedKeyOrModKey() to IsNamedKeyOrMod() for consistency.
Fixed GetKeyName(ImGuiKey_None) from returning "N/A" or "None" depending on IMGUI_DISABLE_OBSOLETE_KEYIO.
See "inputs_keychord_name" in imgui_test_suite.
2024-05-17 17:07:50 +02:00
ocornut
25e279ee73
Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. ( #2343 )
2024-05-17 15:26:34 +02:00
ocornut
b4f564c1ed
Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest ( #456 )
2024-05-17 14:18:22 +02:00
ocornut
b39fc84f89
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-05-16 19:57:04 +02:00
ocornut
5107e58b0f
Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. ( #2343 )
2024-05-16 19:56:29 +02:00
ocornut
8bd5d1d42f
Inputs: Fixed swapping of keys associated to mods. Fixed warnings. ( #2343 , #4084 , #5923 , #456 )
...
Amend 7747106
.
2024-05-16 19:23:05 +02:00
ocornut
7747106647
Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. ( #2343 , #4084 , #5923 , #456 )
2024-05-16 19:16:55 +02:00
Hubert Maier
07dbcf1f70
Fixed typos. ( #7593 )
2024-05-16 16:13:01 +02:00
ocornut
5d973a87d4
Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter.
2024-05-15 13:44:54 +02:00
Erin M
af2fbf043d
Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES ( #7585 )
2024-05-15 11:42:56 +02:00
ocornut
eabe98f6d5
Merge branch 'master' into docking (incl merge moved CurrentDpiScale field)
...
# Conflicts:
# backends/imgui_impl_osx.mm
# backends/imgui_impl_win32.cpp
# imgui.cpp
2024-05-14 16:29:06 +02:00
ocornut
e4576914cb
Internals: amend f806c76
to better match docking + fixed unused static forward declaration warning.
2024-05-14 16:22:27 +02:00
ocornut
d0524df887
Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication.
2024-05-14 16:03:00 +02:00
ocornut
f806c76e97
Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness.
...
+ Added note about how equivalent resize padding for windows (sourced from WINDOWS_HOVER_PADDING) would need further rework.
2024-05-14 15:03:20 +02:00
ocornut
5e23680454
Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. ( #7568 )
2024-05-13 15:07:13 +02:00
ocornut
f48aae600a
Version 1.90.7 WIP
2024-05-13 14:47:37 +02:00
ocornut
e391fe2e66
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_internal.h
2024-05-08 16:17:32 +02:00
ocornut
6ccc561a2a
Version 1.90.6
2024-05-08 15:38:33 +02:00
ocornut
d4495446d5
Windows, Internal: added experimental SkipRefresh mode. ( #3515 , #4763 , #7556 , #5116 , #4076 , #2749 , #2268 )
...
currently: ImGui::SetNextWindowRefreshPolicy(ImGuiWindowRefreshFlags_TryToAvoidRefresh);
- This is NOT meant to replace frame-wide/app-wide idle mode.
- This is another tool: the idea that a given window could avoid refresh and reuse last frame contents.
- I think it needs to be backed by a careful and smart design overall (refresh policy, load balancing, making it easy and obvious to user).
- It's not there yet, this is currently a toy for experimenting.
My other issues with this:
- It appears to be very simple, but skipping most of Begin() logic will inevitably lead to tricky/confusing bugs. Let's see how it goes.
- I don't like very much that this opens a door to varying inconsistencies
- I don't like very much that it can lead us to situation where the lazy refresh gets disabled in bulk due to some reason (e.g. resizing a dock space) and we get sucked in the temptation to update for idle rather than update for dynamism.
2024-05-07 11:44:43 +02:00
ocornut
2f2d5070f5
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2024-05-03 16:30:09 +02:00
ocornut
0b309471f2
Windows: Changed default ClipRect to extend to windows' left and right borders. ( #3312 , #7540 , #3756 , #6170 , #6365 )
2024-05-03 16:00:20 +02:00
ocornut
0c9c12c1bb
InnerClipRect use ImFloor() matching docking branch (fix c41868531
for #6861 , #2884 , followed by rename 94da5842
)
...
Since negative windows can never be visibile in master it didn't show as a difference.
2024-05-03 15:51:49 +02:00
ocornut
6ebbecc6a0
Realign assignments.
...
No functional changes.
2024-05-03 12:57:07 +02:00
thedmd
fc4d818e17
Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. ( #6917 )
2024-05-03 12:54:59 +02:00
ocornut
4bb7567141
Tables: Angled headers: fixed multi-line label display when angle is flipped. ( #6917 )
2024-05-02 13:49:26 +02:00
ocornut
9d6818d0ce
Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. ( #7535 , #2771 )
...
Amend ebbb98d51
2024-04-30 14:10:11 +02:00
ocornut
5717f0a33e
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_win32.cpp
2024-04-30 10:42:46 +02:00
ocornut
50b2ff0bf0
ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it ( #7534 )
...
This is essentially a misleading grace feature allowing a build mistake to be made, as we technically are more flexible now. BUT if we reintroduce a need we may more harshly move it to the top of the structure to detect issues.
2024-04-30 10:23:03 +02:00
ocornut
b555984a94
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
2024-04-18 21:18:18 +02:00
ocornut
fa0120ea5e
Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. ( #7506 , #823 )
...
Amend 067605052
, 27fd1b913b
2024-04-18 21:17:12 +02:00
ocornut
361432a0bb
TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). ( #7505 , #282 )
...
Also adjust some of the interact_bb padding, arbitrary interact padding not meaningful as empty label is likely to be followed by extra item. User likely to use ImGuiTreeNodeFlags_SpanAvailWidth.
2024-04-18 20:50:00 +02:00
ocornut
eba46cb0d2
Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() ( #7504 ) + update Gallery links
2024-04-17 18:00:55 +02:00
ocornut
4cb0fe3c7d
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdl3.h
# docs/CHANGELOG.txt
# imgui_internal.h
2024-04-16 14:24:13 +02:00
ocornut
c1743eef48
Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. ( #6709 , #4643 , #7491 )
2024-04-15 11:43:16 +02:00
ocornut
3caa79c8a5
Version 1.90.6 WIP
2024-04-15 11:27:07 +02:00
ocornut
76bc1b825e
Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. ( #7495 , #6406 )
...
Also changed g.Font->ContainerAtlas->Flags to g.IO.Fonts->Flags
2024-04-15 11:24:43 +02:00
ocornut
f790d51665
Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal!
2024-04-12 16:55:32 +02:00
ocornut
1db579d458
Merge branch 'master' into docking
2024-04-11 16:21:56 +02:00
ocornut
231cbee0fc
Version 1.90.5
2024-04-11 15:54:39 +02:00
ocornut
e7712ff103
Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block.
2024-04-03 10:50:32 +09:00
ocornut
f959c417fe
Refactor moving ID stack functions to their own section (part 2)
2024-04-03 10:48:32 +09:00
ocornut
0bf134a8e2
Refactor moving ID stack functions to their own section.
2024-04-03 10:42:57 +09:00
ocornut
9638c2839a
Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. ( #1418 )
2024-03-27 12:00:50 +09:00
ocornut
742e53434f
Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. ( #7440 )
2024-03-27 11:36:57 +09:00
cfillion
515b437c08
Child windows: look at the parent window's flags to decide whether to clamp child resizes. ( #7440 , #1710 )
2024-03-27 11:24:07 +09:00
cfillion
976dc23965
Windows: extend outer resize borders to the edges when there are no corner grips. ( #7440 , #1710 )
2024-03-27 11:01:14 +09:00
cfillion
cf4c10bef7
Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. ( #7411 )
2024-03-26 14:38:38 +09:00
ocornut
085781f5ca
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-03-18 22:52:40 -07:00
cfillion
868facff9d
ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). ( #2743 , #7417 )
2024-03-18 22:50:47 -07:00