thedmd
3b66929301
Inputs: Extra Keys / AddKeyEvent(): Added ImGuiKey values, io.AddKeyEvent(), GetKeyName(), IMGUI_DISABLE_OBSOLETE_KEYIO. Obsoleted GetKeyIndex(), io.KeyMap[], io.KeysDown[]. ( #2625 , #4858 , #2787 )
2022-01-10 15:09:56 +01:00
ocornut
afffcd5810
Inputs: rename ImGuiKey_KeyPadEnter > ImGuiKey_KeypadEnter ( #2625 )
2022-01-06 14:25:56 +01:00
ocornut
4d023bd7fe
Fix for using IMGUI_DISABLE_OBSOLETE_FUNCTIONS
2022-01-05 14:55:17 +01:00
actboy168
29a8ee0826
Platform IME: add ImGuiPlatformImeData::WantVisible, hide IME when not used. ( #2589 )
2022-01-05 13:47:21 +01:00
ocornut
1cbfe93520
Platform IME: [windows] call ImmSetCandidateWindow() to position candidate window.
2022-01-05 13:47:21 +01:00
ocornut
2706c9d66e
Platform IME: reworked internals to simplify adding new features.
2022-01-05 13:47:20 +01:00
ocornut
3a90dc3893
Platform IME: changed io.ImeSetInputScreenPosFn() to io.SetPlatformImeDataFn() API.
...
Ref #2589 , #2598 , #3108 , #3113 , #3653 , #4642
2022-01-05 13:47:20 +01:00
ocornut
04bc0b0bb8
Fix IdxBuffer related comments. ( #4845 , #4863 )
2022-01-05 12:20:33 +01:00
ocornut
28eabcb099
Internals: refactor: mouse input functions into their own section.
2022-01-04 14:53:36 +01:00
ocornut
206b9ead8f
IO: removed unused MouseDragMaxDistanceAbs(). Using a shortcut variable in UpdateMouseInputs().
2022-01-04 13:01:30 +01:00
ocornut
b0a6cd6305
Fixed a situation where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles, ( #4857 )
...
(2nd amend)
2022-01-03 21:45:20 +01:00
ocornut
2402958aec
Commented out redirecting functions/enums names that were marked obsolete in 1.69, 1.70, 1.71, 1.72
...
- ImGui::SetNextTreeNodeOpen() -> use ImGui::SetNextItemOpen()
- ImGui::GetContentRegionAvailWidth() -> use ImGui::GetContentRegionAvail().x
- ImGui::TreeAdvanceToLabelPos() -> use ImGui::SetCursorPosX(ImGui::GetCursorPosX() + ImGui::GetTreeNodeToLabelSpacing());
- ImFontAtlas::CustomRect -> use ImFontAtlasCustomRect
- ImGuiColorEditFlags_RGB/HSV/HEX -> use ImGuiColorEditFlags_DisplayRGB/HSV/Hex
2022-01-03 16:37:33 +01:00
ocornut
dbeea7220f
Backends: Silence overzealous warnings. ( #4834 ) Add comments about SetDragDropPayload() return value. ( #4835 )
2021-12-29 12:44:12 +01:00
ocornut
89a28209e8
Version 1.87 WIP + Backends: OpenGL3: Fixed a buffer overflow in imgui_impl_opengl3_loader.h init, added in 1.86 ( #4468 , #4830 )
2021-12-26 20:02:02 +01:00
ocornut
512c54bbc0
Version 1.86
2021-12-22 15:31:13 +01:00
ocornut
612b787b0d
Menus: fixed top-level menu from not consistently using style.PopupRounding. ( #4788 )
...
+ Stack tool default size.
2021-12-21 15:05:10 +01:00
ocornut
d9bc1e44af
Backends: Marmalade: Removed obsolete Marmalade backend (imgui_impl_marmalade.cpp) + example. ( #368 , #375 )
2021-12-20 19:29:41 +01:00
ocornut
4a43dcb940
Internals: reduced side-effects of setting window->HiddenFramesForRenderOnly > 0
2021-12-15 16:05:15 +01:00
ocornut
1c4066cd9e
Internals: UpdateWindowInFocusOrderList: amend a528398
to fix docking. ( #3496 , #4797 )
2021-12-15 14:27:56 +01:00
ocornut
48f263336b
Menus: fixed closing a menu inside a popup/modal. Fixed menu inside a popup/modal not inhibiting hovering of items in the popup/modal. ( #3496 , #4797 )
...
Fixed sub-menu items inside a popups from closing the popup (debatable).
2021-12-14 16:54:23 +01:00
ocornut
a528398c77
Internals: support for varying _ChildWindow flag for menu windows. ( #3496 , #4797 )
2021-12-14 16:19:43 +01:00
ocornut
11638fdf7d
Menus: reuse more menu windows when stacked over popups.
...
This is actually mostly aimed at ensuring the _ChildWindow flag on menu window doesn't vary as this would cause issues with our current g.WindowsFocusOrder[] scheme
2021-12-13 19:35:16 +01:00
xndcn
8a9fe26866
Menus: fixed closing a menu by clicking on its menu-bar item when inside a popup. ( #3496 , #4797 )
2021-12-10 18:58:41 +01:00
ocornut
c801799218
Added an assertion for the common user mistake of using "" as an identifier at the root level of a window. ( #1414 , #2562 , #2807 , #4008 , #4158 , #4375 , #4548 , #4657 , #4796 )
...
#4158 , #4375 , #4548 , #4657 , #4796 )
2021-12-09 15:35:02 +01:00
ocornut
a8e1dde357
Fix static analyser, update readme.
2021-12-09 15:17:58 +01:00
ocornut
e03383d088
Fixes for tooltip over modals leading to incorrect modal dimming. ( #4729 )
...
Amend 23ef6c1
. Should rework tooltip to be in a consistent position in g.Windows[]
2021-12-09 11:50:38 +01:00
ocornut
270d4d0855
Nav, Docking: Fix crash on dimming docked window and DockSpaceOverViewport() with PassthruCentralNode.
...
(amend 1dc3af3
, 23ef6c1
, 657073a
)
# Conflicts:
# imgui.cpp
2021-12-08 17:07:07 +01:00
Rokas Kupstys
b38af0f522
Popups: Fix popups being closed by newly appearing windows. ( #4317 )
...
* Popups/modals now remain open when new windows are created from within popup/modal begin stack.
* Modals are not closed when new window appears behind active modal.
Tested by "window_popup_interruptions"
2021-12-07 15:52:13 +01:00
ocornut
657073a650
Nav, Docking: fix dimming crash with accessing zero-cmd ImDrawList (amend 1dc3af3
, 23ef6c1
)
...
# Conflicts:
# imgui.cpp
2021-12-06 19:16:14 +01:00
ocornut
20e040c858
Clipper, Tables: remove table specific code path should now be ok (added assert).
2021-12-06 17:17:43 +01:00
ocornut
926addbfe2
Clipper: fixed invalid state when number of frozen table row is smaller than ItemCount.
...
+ Bonus rather unorthodox coding style.
2021-12-06 17:17:43 +01:00
ocornut
027a7ba3eb
Clipper: use line size instead of cursor comparaison when range are large. ( #3609 , #3962 + https://github.com/ocornut/imgui_club/issues/20 )
2021-12-06 17:17:43 +01:00
ocornut
a76bc52da5
Window, Clipper: store initial precision loss and apply in clipper. ( #3609 , #3962 + https://github.com/ocornut/imgui_club/issues/20 )
2021-12-06 16:19:47 +01:00
ocornut
6e141a9cae
Internals: made ScrollbarEx() use ImS64 to facilitate use with larger ranges (not fully tested) + clipper tweaks ( #3609 , #3962 + https://github.com/ocornut/imgui_club/issues/20 )
...
This does NOT fix all problems with large ranges and floating point precision, it merely attenuate them.
2021-12-06 12:09:38 +01:00
ocornut
23ef6c149e
Reworked modal/ctrl+tab dimming system to be entirely processed at end of the frame (backported 1dc3af3
from docking)
2021-12-03 19:21:39 +01:00
ocornut
da3a36eefd
Backport from docking branch: minor stuff.
...
Fixed software mouse cursor being rendered multiple times if Render() is called more than once.
2021-12-03 19:11:58 +01:00
ocornut
78c6435dbb
Inputs: (breaking wip) removed IsMouseTripleClicked() added recently (during 1.86 WIP), replaced with GetMouseClickedCount(). ( #3229 )
2021-12-03 12:38:58 +01:00
ocornut
5b1a70aa2d
Fixed RenderRectFilledWithHole() (used by docking) + added dummy EndFrameDrawDimmedBackgrounds() stub in master.
...
The round corner flag change in 033dfd9d
forgot to default to _None.
2021-12-01 15:26:34 +01:00
ocornut
f087a5b856
Metrics: Added a node showing windows in submission order and showing the Begin() stack.
2021-11-30 16:04:19 +01:00
ocornut
c5db276521
InputText, Nav: fixed tabbing through InputTextMultiline(). ( #4761 , #3092 )
...
Messy... Broken by 66f0fb9
. Added ImGuiItemFlags_NoTabStop to EndGroup() ahead of time (not strictly needed here).
2021-11-30 15:17:18 +01:00
ocornut
9d704d99d3
Internals: wrapped ImQsort() in an inline function + added a define guard.
2021-11-30 12:59:00 +01:00
ocornut
764f9e606d
Fixed crash on right-click without modal, introduced by previous commit a3667f46
, ( #4729 )
2021-11-17 12:45:33 +01:00
ocornut
a3667f462a
Fixed tooltip in own viewport over modal from being incorrectly dimmed. ( #4729 )
...
Normally we would aim to ensure that g.Windows[] gets maintained to reflect display layer but it is presently non trivial.
2021-11-16 16:13:04 +01:00
ocornut
d80a9123b7
Internals: move chunks of IsItemHovered() so upcoming commit can be less noisy. This commit should be a no-op (check by comparing without white-space changes)
2021-11-10 20:18:51 +01:00
ocornut
2c29e391dd
Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceAllowNullID doesn't lose tooltip when scrolling. ( #143 )
...
Reduced amount of self critical commentary since it'll appear like a hack for users but it isn't more a hack than many other things.
2021-11-10 19:17:01 +01:00
ocornut
f8a806ad9f
Tooltips, Internal: (Breaking) swapped parameter order to accomodate for future tooltip api rework.
2021-11-10 17:53:58 +01:00
ocornut
cad790d43b
Nav: fixed backwrap tabbing wrap on sibling child windows with _NavFlattened flag. ( #4449 )
...
Amend 1a7526dc
2021-11-10 12:44:43 +01:00
ocornut
e790fc0e79
Nav: prevent child from clipping items when using _NavFlattened and parent has a pending nav request. ( #787 )
2021-11-10 12:00:50 +01:00
ocornut
a9ea1ae854
Nav: fixing assert using Tab in a window without any tabbable element ( #4449 )
...
Amend 1a7526dc
2021-11-10 11:42:39 +01:00
ocornut
eb02dcf87f
Nav: enable move/resize window with keyboard in Ctrl+Tabbing windowing menu even without _NavEnableKeyboard. ( #4023 , #787 ).
2021-11-08 18:42:07 +01:00
ocornut
8ce23b3ccd
Nav: Ctrl+tabbing to cycle through windows is now enabled regardless of _NavEnableKeyboard. ( #4023 , #767 )
2021-11-08 17:41:36 +01:00
ocornut
bce1ba400f
Clipper: add ForceDisplayRangeByIndices ( #3841 , #3578 )
...
This partially reverts commit 6a7e2c74fb
.
2021-11-08 17:20:30 +01:00
ocornut
1a7526dcd4
Nav, Tabbing: refactor tabbing system to support clipped items, scrolling, using nav queries. ( #4449 )
...
Not using counter/modulo anymore and special provisions to handle tab wrapping with ImGuiListClipper. Wrapping may be done better as a next-frame forwarded request.
Also one extra step toward #3949 #3985
2021-11-04 20:48:12 +01:00
ocornut
f01a6d3e8f
InputText, Nav: fixed repeated calls to SetKeyboardFocusHere() preventing to use InputText(). ( #4682 )
...
+ Stack Tool: favor inspecting HoveredID over ActiveID as the later is more likely to be locked.
2021-11-04 20:02:42 +01:00
ocornut
32779c5b64
Clipper: hotfix (amend 93cccd2
, was broken) ( #3841 , #1725 )
2021-11-04 15:17:08 +01:00
ocornut
64daeddf6f
Removed CalcListClipping() function. ( #3841 )
2021-11-04 14:14:16 +01:00
ocornut
6a7e2c74fb
Clipper: remove ForceDisplayRangeByIndices/ForceDisplayRangeByPositions functions until we find a need for them, since #3841 is now solved automatically.
2021-11-04 14:05:14 +01:00
ocornut
93cccd27f6
Clipper: bunch of rework. ( #3841 , #1725 )
...
- Focused/NavId now always included in display range.
- Any number of steps (while preserving zero-alloc policy).
- Non contiguous ranges for nav processing
- Moved new fields internally (+ moved StepNo away from sight so it doesn't get missused).
- Generally tweaks/refactors.
2021-11-04 14:05:14 +01:00
GamingMinds-DanielC
cd1b5f7883
Clipper: enhanced ImGuiListClipper ( #3841 )
2021-11-04 13:56:37 +01:00
ocornut
b409df34db
Clipper: Fixed content height declaration slightly mismatching the one of when not using a clipper.
2021-11-03 17:00:40 +01:00
ocornut
14466a6d19
Nav: Page/Home/End doesn't immediately restore highlight (before results comes) + pressing Esc to exit a child window re-enable the Nav highlight if it was disabled by mouse.
...
Also fix a move request fail restoring highlight from not moving mouse cursor.
Add NavRestoreHighlightAfterMove() helper a little bit of extra sanity.
2021-11-02 17:04:35 +01:00
ocornut
978598b174
Nav: pressing PageUp/PageDown/Home/End when in Menu layer automatically moves back to Main layer. + fixed resizing window from borders setting navigation to Menu layer.
2021-11-02 17:04:34 +01:00
ocornut
d1eb7b5757
ScrollToItem: amend fully visible tests to take account of spacing used (fix nav in one axis scrolling back and forth between axises when space is tight by just < ItemSpacing*2) ( #3692 , #2812 , #4242 , #2900 )
...
Amend 8f495e55
2021-11-02 16:17:12 +01:00
ocornut
a67f7dce31
Nav: relative rectangle positions are now stored relative to CursorStartPos to be independent of scrolling. Will facilitate rework of clipper ( #3841 )
...
+ Extracted code into NavUpdateCreateWrappingRequest()
+ Fix for PVS in NavUpdate() assigning g.NavMousePosDirty twice.
2021-10-27 14:18:03 +02:00
ocornut
8d361c47fb
Nav: rework NavEnableSetMousePos application so scrolling is applied more consistently in NavCalcPreferredRefPos() + moved at end of NavUpdate() after the last SetScroll have been done.
2021-10-27 12:55:46 +02:00
ocornut
8361ed1f54
Nav: wrap abs<>rel rectangle conversions before we attempt to switch the reference point from window->Pos to window->DC.CursorStartPos. This commit should have no effect.
...
Current point makes rectangle invalid right after a scroll, for interactive actions it's rarely a problem but e.g. clipper will want to use g.NavID rect rel while scrolling. (#3841 )
2021-10-27 12:28:45 +02:00
ocornut
19c72cd52a
Nav: fixed absolute mouse position (with NavEnableSetMousePos config flag) when using Home/End leads to scrolling.
2021-10-27 12:28:35 +02:00
ocornut
c363b6df2b
Modals: fixed issue hovering popups inside a child inside a modal. Fixed IsWindowFocused()/IsWindowHovered() issues with childs inside popups. ( #4676 )( #4676 , #4527 )
...
Amend/fix 6b1e094f, fc4988ffb
(Sep 24)
2021-10-27 12:03:14 +02:00
ocornut
0f2898ea88
Demo: Tree selection demo use !IsItemToggledOpen() ( #1896 ) + update FAQ ( #4366 )
2021-10-25 18:38:56 +02:00
ocornut
9c78fc928a
Inputs: Mouse: Amend c8e3a01 for tracking multiple clicks, renaming. ( #3229 )
2021-10-25 14:30:20 +02:00
Chris Savoie
2318c764cf
Inputs: Mouse: Add support for tracking multiple clicks more than just double ( #3229 )
2021-10-25 14:30:17 +02:00
ocornut
e3bd9434b1
1.86 WIP + internals: tweaks table temp data code.
2021-10-14 16:58:14 +02:00
ocornut
55d35d8387
Version 1.85
2021-10-11 19:24:25 +02:00
ocornut
75c54e6384
Nav: Fixed vertical scoring offset when wrapping on Y in a decorated window.
2021-10-11 14:40:47 +02:00
ocornut
ba5c105c01
Menus: Fixed an assertion happening in some situations when closing nested menus (broken in 1.83). ( #4640 )
...
Broken since 936f5322
Weirdly chain-reaction caused by the fact following #4640 repro, the SourceWindow assignment in OpenPopupEx() picks Menu_04 before its closure. Value of SourceWindow since bda2cde6
#2517
2021-10-11 11:48:39 +02:00
ocornut
44f801186f
SetItemDefaultFocus() use ScrollToRectEx(), don't tab when Alt is held either, TabItemEx() uses ItemAdd's extra_flags, misc comments.
2021-10-08 15:24:54 +02:00
ocornut
31d033c9d8
Nav: refactor SetKeyboardFocusHere() into using Nav facility. Fix it for clipped items. ( #343 , #4079 , #2352 , #432 )
...
+ Removed references to counter used by previous implementation of SetKeyboardFocus functions (the TabStop ones will be removed after)
2021-10-06 18:42:11 +02:00
ocornut
fbe78b1a3a
Stack Tool: Docs ( #4631 ) + also prevent Metrics window from displaying twice.
2021-10-06 18:22:40 +02:00
ocornut
2de96c4bd5
Stack Tool: Added Stack Tool (ShowStackToolWindow() function and available from Demo and Metrics window). ( #4631 )
2021-10-06 17:47:27 +02:00
ocornut
164a86d3b0
Moved !IsActiveIdUsingKey(ImGuiKey_Tab) check to UpdateTabFocus(). Added asserts to IsItemHovered() and IsWindowHovered().
2021-10-05 22:06:12 +02:00
ocornut
8f495e5543
Internal: added ScrollToItem() upcoming replacement to ScrollToBringRectIntoView() + ImGuiScrollFlags (WIP) ( #3692 , #3208 , #2812 , #4242 , #2900 )
2021-09-29 17:13:45 +02:00
ocornut
fc4988ffb0
Added ImGuiFocusedFlags_NoPopupHierarchy and ImGuiHoveredFlags_NoPopupHierarchy (followup #4527 )
2021-09-24 15:39:38 +02:00
ocornut
24a77824f2
Added ClosePopupsExceptModals() helper, unused for now (aimed at user being able to close popups on app focus loss, not necessarily a suitable default)
2021-09-22 15:50:40 +02:00
ocornut
bbb95a5e06
IO: modify io.AddFocusEvent() to tolerate in/out for multi-viewports. Amend 2f40be6
. (merged from docking) ( #3532 )
2021-09-22 15:47:53 +02:00
ocornut
15132217a3
Nav: Fixed an issue with losing focus on docked windows when pressing Alt while keyboard navigation is disabled. ( #4547 , #4439 )
2021-09-21 14:17:49 +02:00
ocornut
2cffcbdc64
InputText: fix Space key with nav enabled interfering with input text boxes (fix bd6c9e99
). made it possible to activate InputText with tweak gamepad button (why not, now that we can cancel) ( #4552 , #2321 )
2021-09-17 16:30:32 +02:00
ocornut
3973de7933
Internals: removed last parameter to IsClippedEx() + fix PVS studio warnings.
2021-09-16 18:07:17 +02:00
ocornut
2d0a6a4969
Misc: moved StacSizeOnBegin out of window instance into window stack data.
2021-09-15 15:36:03 +02:00
ocornut
66cd21db88
Misc: extracted ErrorCheckEndWindowRecover() out of ErrorCheckEndFrameRecover(). ( #1651 )
2021-09-15 15:26:29 +02:00
ocornut
d366694062
Disabled: Added assert guard for mismatching BeginDisabled()/EndDisabled() blocks. ( #211 ) + Added asserts for missing PopItemFlag() calls. Added both to ErrorCheckEndFrameRecover ( #1651 )
2021-09-15 15:26:29 +02:00
ocornut
321b84f01f
Internals: refactored IsWindowHovered()/IsWindowFocused() to make their logic more similar + change underlying value of ImGuiHoveredFlags_AllowWhenBlockedByPopup + comment out docking only flags.
2021-09-08 16:44:53 +02:00
ocornut
d9b427cce0
Nav: clarified/renamed NavInputId as NavAcivateInputId, added flags shared by both.
...
(this commit should have no visible side effect but is designed to introduce the followup commit refactoring SetKeyboardFocusHere into using a Nav request)
2021-09-07 18:10:31 +02:00
ocornut
607ad8c949
Drag and Drop: Fixed using BeginDragDropSource() within a Begin()/BeginChild() that returned false. ( #4515 ) + BeginDragDropTarget()
...
Note how 79ae6d3b
adedd a SkipItems test in BeginDragDropTargetCustom() only.
Catching this similar to work needed to neatly represent the error in #4375 #4158 , #4008 , #2562
2021-09-06 20:59:16 +02:00
ocornut
ade4c15eea
Nav: Tidying up, renaming + update AnyRequest flag in NavMoveRequestSubmit().
2021-09-03 16:35:41 +02:00
ocornut
5ee40c8d34
Nav: always disable highlight if nav is disabled, fix for IMGUI_DEBUG_NAV_SCORING, minor renaming.
2021-09-02 12:05:32 +02:00
ocornut
dff15acdb5
Nav: Fixed toggling menu layer with Alt exiting menu layer with Esc not moving mouse when NavEnableSetMousePos config flag is set.
2021-09-01 16:05:03 +02:00
ocornut
3d9d3b49ae
Internals: folded ImGuiItemAddFlags into ImGuiItemFlags. ImGuiItemAddFlags_Focusable > ImGuiItemFlags_Inputable. One step in the big nav/tab/focus rework.
...
Bonus simplified Selectable() handling of its custom disabled flag. (#211 )
2021-09-01 14:46:08 +02:00
ocornut
73a5e82e04
Nav: removed parameters from NavScoreItem(), NavProcessItem(), NavApplyItemToResult(): made little sense / misleading because pulling from other current state anyway.
...
Will readd in a more thorough manner is actually needed.
2021-09-01 14:13:40 +02:00
ocornut
a735a8c084
Nav: storing NavRect in LastItemData. Fix race condition where framed items (Rect != NavRect) calling SetFocusID() would store the wrong NavRectRel until next frame
...
(haven't dugged in the possible side-effects of that race condition)
2021-09-01 12:12:51 +02:00
ocornut
ee351d3548
Nav: move code into NavMoveRequestSubmit(). NavApplyItemToResult() takes absolute rect., comments
2021-09-01 12:06:15 +02:00