Commit Graph

1582 Commits

Author SHA1 Message Date
ocornut
e9d8b48a4c Navigation: Allow to navigate out of text input with direction or NavCancel (#323) 2016-07-23 20:30:44 +02:00
ocornut
2f94563564 Navigation: Collapsed window uses ImGuiCol_TitleBgActive when navigation is active (#323) 2016-07-23 20:09:41 +02:00
ocornut
afadc7cf59 Navigation: Scoring: Improved directional navigation. Not totally cancelling out dx. Better support for zero-spaced items. (#323) 2016-07-23 20:05:17 +02:00
ocornut
e74d96642f Navigation: mouse/popup position gets clamped within visible display (#323) 2016-07-23 19:42:19 +02:00
ocornut
0cc20fca83 Navigation: Scoring uses rectangle as clipped by parent. Fix selectable extending past parent column among other things (#323) 2016-07-23 19:24:56 +02:00
ocornut
2f1fb41579 Navigation: Fixed automatic fallback scrolling from glitching near scroll limits because of miscalculation of SizeContents (#323) 2016-07-23 16:31:23 +02:00
ocornut
ad48309047 Navigation: Fixed using NavWindowed when a menu is open. (#323) 2016-07-23 16:01:27 +02:00
ocornut
2cab404a81 Fixed tooltip positioning issues when using navigation (#323) 2016-07-23 15:44:56 +02:00
ocornut
c2cb2a6928 Gamepad/Keyboard navigation support, initial commit, WIP (#323) 2016-07-20 00:02:59 +02:00
ocornut
4a11cc35b9 Updated code for repeat delay / repeat handling. GetKeyPressedAmount() now returns a count to support fast repeat rate (where DeltaTime > RepeatRate).
Renamed from recently added IsKeyPressed() variant to GetKeyPressedAmount(). (no API breakage, added in branch, bbd3b75609) (#323)
2016-07-19 21:26:36 +02:00
ocornut
88c1966629 Added IsAnyWindowFocused(). Renamed IsMouseHoveringAnyWindow() -> IsAnyWindowHovered(), IsPosHoveringAnyWindow() -> IsAnyWindowHoveredAtPos(), IsMouseHoveringWindow() -> IsWindowHoveredRect() for consistency. Kept inline rediection function. 2016-07-18 18:24:23 +02:00
ocornut
23a81027e8 Comment on invalid comment regarding preserving keyboard focus of a closed window, due to commit 19d02becef. This is probably still what we want. (followup #727) 2016-07-18 18:22:11 +02:00
ocornut
eb405ab375 DragBehavior: Moving code around, in what should be a no-op, to simplify upcoming Nav diff (#323, #180) 2016-07-18 18:22:10 +02:00
ocornut
c816e6c742 Fixed SetScrollX() handling of center ratio (which actually wasn't exposed publicly). (#323, #246) 2016-07-18 18:22:09 +02:00
ocornut
e10ecfe28a BeginChild(): tweak to make the code easier to understand 2016-07-18 18:22:08 +02:00
ocornut
24f79b91bd Style: minor tweak to default color theme to make currently focused window more prominent (#323, #707) 2016-07-18 18:22:07 +02:00
ocornut
068984691e Tab-key focusing inhibited when CTRL is held (#323) 2016-07-18 15:26:05 +02:00
ocornut
267e54cf06 NewFrame(): update activeid data and keyboard before mouse. Should have no side-effects! (So that later we can update Nav between Keyboard and Mouse) (#323) 2016-07-18 15:26:04 +02:00
ocornut
272745bd93 ImGuiIO: initializing fields in the same order as the declaration. 2016-07-18 15:26:03 +02:00
ocornut
848e62bfe0 InputText: don't process keys during the activation frame (this is mostly a workaround to that activation with enter doesn't validate immediately, which is turns triggers an assert in InputScalarAsWidgetReplacement - can't see an issue with changing it this way so trying out) + using local flag clear_active_id to only clear the active id at the end of the frame, which is one of the step that my stash for #701 requires. (#323) 2016-07-18 15:26:02 +02:00
ocornut
57841f417d SliderBehavior, RoundScalar: split into separate functions for usage in upcoming nav commits. Testing power==1.0f without fabsf(). Maybe just use == 1.0f as well? (#323) 2016-07-18 15:26:01 +02:00
ocornut
6f7da2f9f2 Popup: Fixed popup initial frame reading MousePos again instead of the value already stored within the CurrentPopupStack in the previous frame. Doesn't make a big difference here, but will do as gamepad/keyboard navigation will set its own popup position. (#323) 2016-07-18 15:26:01 +02:00
ocornut
91e1c56da6 Minor bits. 2016-07-18 15:25:59 +02:00
ocornut
bbd3b75609 Added IsKeyPressed() with explicit repeat delay and repeat rate (for usage by nav) (#323) 2016-07-18 15:25:58 +02:00
ocornut
9f92cc255b SetActiveId() sets ActiveIdIsJustActivated only when id changes. (#323) 2016-07-18 15:25:57 +02:00
ocornut
ffdd7d7f17 Begin: Moved code that calls FocusWindow() on a newly appearing window lower in the function so that Nav branch can use CursorStartPos on the first window frame. (#323)
Pushing in master because it _should_ be a no-op but I'd rather test for any issue in Begin() as soon as possible.
2016-07-18 15:25:44 +02:00
ocornut
19d02becef Closing the focused window restore focus to the first active root window in descending z-order (part of #727) 2016-07-17 19:17:49 +02:00
ocornut
e215905765 Fixed scrolling offset when using SetScrollY(), SetScrollFromPosY(), SetScrollHere() with menu bar.
Tests:
a) add SetScrollY(+20) after Begin("ImGui Demo") test with/without title/menu.
b) add ImGuiWindowFlags_MenuBar in BeginChild() in scrolling tracking demo.
2016-07-16 18:12:41 +02:00
ocornut
44a13a7f25 Windows: No default IME handler when compiling using GCC. (#738) 2016-07-16 11:29:41 +02:00
ocornut
04b36bc397 TODO list 2016-07-14 13:38:44 +02:00
ocornut
81036ee46f InputTextMultiline(): fix so that IsItemActive() can be used afterwards (otherwise the info was lost by using child/group) 2016-07-14 13:27:14 +02:00
ocornut
88721118fd InputTextEx: comments (related to #725) 2016-07-13 01:54:29 +02:00
ocornut
d9e2e688e9 InputTextMultiline(): partial fix for when input and internal buffers differs in a way where scrollbar existence differs. (#725)
Partial fix, won't stop ids from functioning because of a zombie id.
2016-07-13 01:18:59 +02:00
ocornut
5525c2356a Using GetCurrentWindowRead() instead of GetCurrentWindow() 2016-06-29 10:30:42 +02:00
ocornut
fe7274b6c7 SetCursorScreenPos() fixed not adjusting CursorMaxPos as well 2016-06-29 10:25:47 +02:00
ocornut
b9b3dec7da ImGuiListClipper: Fix to behave within column (#661, #662, #716) 2016-06-29 10:19:01 +02:00
ocornut
74bbfcfaa6 ImGuiListClipper: fixed automatic-height calc path dumbly having user display element 0 twice (#661, #716)
First bug out of two. Was easily visible using e.g. 50% alpha text.
2016-06-29 10:07:36 +02:00
ocornut
297bb3fc92 NextColumn() tidying up with a sane early out 2016-06-29 09:53:02 +02:00
ocornut
ba7acdac47 Added assert to track stb_textedit.h issue (#715) 2016-06-27 12:59:49 +02:00
ocornut
c36fd541ad InputTextMultiline(): Fixed Ctrl+DownArrow moving scrolling out of bounds 2016-06-27 09:56:45 +02:00
ocornut
e06852abaf Fixed Windows default clipboard leaving its buffer unfreed on application's exit. (#714) 2016-06-26 13:24:30 +02:00
ocornut
de61fcc619 Minor bits 2016-06-25 17:03:49 +02:00
ocornut
355dae5d99 Comments amend 3c8e490778 (committed before saving last comment edit) (#703) 2016-06-25 14:37:14 +02:00
ocornut
3c8e490778 Comment on dealing with io.WantCaptureKeyboard (#703) 2016-06-25 14:28:58 +02:00
ocornut
13615a1318 InputText: render currently edited buffer from the internal buffer, toward #701 2016-06-25 13:57:05 +02:00
ocornut
2f4e2eec68 InputText, ImGuiTextFilter: using strncpy instead of printf("%s"). 2016-06-25 13:54:34 +02:00
ocornut
4621b357c1 Wrapped text: fixed incorrect testing for negative wrap coordinates, they are perfectly legal. (#706) 2016-06-19 12:50:22 +02:00
ocornut
92bff4c8d7 ColorEdit4(): better preserve inputting value out of 0..255 range, display then clamped in Hexadecimal form 2016-06-16 23:09:48 +02:00
ocornut
9cb271f4c8 Fixed minor text clipping issue in window title for when using font straying above usual line (#699) 2016-06-15 23:09:40 +02:00
ocornut
c4db79f34b Member variable name renamed "ID" "Id" for casing consistency 2016-06-12 22:27:15 +02:00