1169 Commits (4dff49b2f1408e48418f4a67461036f4900a3eca)

Author SHA1 Message Date
omar 9e294be5c5 Docking: Fix for node created at the same time as windows that are still resizing (typically with io.ConfigDockingAlwaysTabBar) to not be zero/min sized. (#2109) ago%!(EXTRA string=6 years)
omar 62f75c7fb1 Added a mechanism to compact/free the larger allocations of unused windows (buffers are compacted when a window is unused for 60 seconds, as per io.ConfigWindowsMemoryCompactTimer = 60.0f). Note that memory usage has never been reported as a problem, so this is merely a touch of overzealous luxury. (#2636) ago%!(EXTRA string=6 years)
omar 483534b525 Internals: Using simpler ImVec2ih construct + fixed misnamed member. ago%!(EXTRA string=6 years)
omar cb538fadfe Internals: Storing settings using ImVec2ih to match what we are doing with dock node. + removed ImMax from reading Size value (done in Begin) + removed seemingly unnecessary FLT_MAX compare in SettingsHandlerWindow_WriteAll. ago%!(EXTRA string=6 years)
omar 27431dcc6b Docking: fix BeginDocked() path that creates node so that SetNextWindowDockID() doesn't immediately discard the node..(#2109) ago%!(EXTRA string=6 years)
omar 72090b646f Fixed incorrect assignment of IsFallbackWindow which would tag dock node host windows created in NewFrame() as such, messing with popup viewport inheritance. ago%!(EXTRA string=6 years)
omar 5d87ee8d82 Internals: Added function index for Viewport and Docking. Renamed a few functions. ago%!(EXTRA string=6 years)
omar f624455d7b Version 1.73 WIP ago%!(EXTRA string=6 years)
omar 967073ba3d Viewport: Handle case where host window gets moved and resized simultaneous (toggling maximized state). There's no perfect solution there, than using io.ConfigViewportsNoAutoMerge = false. (#1542) ago%!(EXTRA string=6 years)
omar 9bd7846f07 Internal: Made ScrollToBringRectIntoView() handle recursing back to scroll parent window, so the function can be called elsewhere (instead of 1 deep recursion done in NavUpdateMoveResult(). ago%!(EXTRA string=6 years)
omar 6a0d0dab5a Version 1.72b (patch for nav) ago%!(EXTRA string=6 years)
omar 27079e68c2 Nav: Made hovering non-MenuItem Selectable not re-assign the source item for keyboard navigation. ago%!(EXTRA string=6 years)
omar 4cfaf7d89c Scrolling, Nav: Fixed programmatic scroll leading to a slightly incorrect scroll offset when the window has decorations or a menu-bar (broken in 1.71). This was mostly noticeable when a keyboard/gamepad movement led to scrolling the view, or using e.g. SetScrollHereY() function. Fix/amend a0994d74. ago%!(EXTRA string=6 years)
omar 3548fb8013 Internal refactor: moved all Scroll related functions in a same spot. ago%!(EXTRA string=6 years)
omar 1b1e539288 Internal: Moved NavScrollToBringItemIntoView() declaration to imgui_internal.h. Fixed spacing missing in 494d804. Fixed changelog wreck from 1.72. ago%!(EXTRA string=6 years)
omar 494d804735 Internal: Added ImGuiInputTextState::ClearText() helper. ago%!(EXTRA string=6 years)
omar cb2de62bb1 Docking: Renaming, comments. ago%!(EXTRA string=6 years)
omar 9183e7c426 Version 1.73 WIP ago%!(EXTRA string=6 years)
omar ecb9b1e2eb Version 1.72 ago%!(EXTRA string=6 years)
omar 7a26a49f08 Internal: Added IsMouseDragPastThreshold(). Tweaks. Todo. ago%!(EXTRA string=6 years)
omar 824e8c53b4 Internals: Added IMGUI_DEBUG_INI_SETTINGS. Made IMGUI_DEBUG_LOG redefinable in imconfig.h. Comments. Fix to allow Metrics's NodeWindow() being called with a NULL window. ago%!(EXTRA string=6 years)
omar 969278fc0b Docking: Fixed dragging/resizing from OS decoration not marking settings as dirty. ago%!(EXTRA string=6 years)
omar efc4c0fe9d Internals: Made IMGUI_DEBUG_LOG redefinable in imconfig.h. Comments. Fix to allow Metrics's NodeWindow() being called with a NULL window. ago%!(EXTRA string=6 years)
omar baae057a03 Internals: Merge in minor noise from wip Tables branch to simplify further merging. ago%!(EXTRA string=6 years)
omar 26f14e056c Scrolling: Made mouse-wheel scrolling lock the underlying window until the mouse is moved again or until a short delay expires (2 seconds). This allow uninterrupted scroll even if child windows are passing under the mouse cursor. (#2604) ago%!(EXTRA string=6 years)
omar dcd03f62a7 Scrolling: Made it possible for mouse wheel and navigation-triggered scrolling to override a call to SetScrollX()/SetScrollY(), making it possible to use a simpler stateless pattern for auto-scrolling. ago%!(EXTRA string=6 years)
omar 75136d3bea Internals: Removed ShowDockingDemo(), moved into Metrics. Metrics: Added more links to browse window->node, node->window, node->node etc. ago%!(EXTRA string=6 years)
omar 0e6a096afd Docking: Renamed io.ConfigDockingTabBarOnSingleWindows to io.ConfigDockingAlwaysTabBar. (#2109) ago%!(EXTRA string=6 years)
omar 6f8d34768d Docking: Removed seemingly unnecessary test in TabItemEx() for undocking tab leading to window move. Added ImGuiDockNode::IsFloatingNode() helper to clarify code intent in various places. ago%!(EXTRA string=6 years)
ocornut 047dc16af5 Debug Tools: Added DebugStartItemPicker() in imgui_internal.h to facilitate binding this anywhere in user's tool. Adedd highlight. Added IMGUI_DEBUG_TOOL_ITEM_PICKER_EX to break in ItemAdd(). ago%!(EXTRA string=6 years)
omar 1f3feb481e Internals: Refactor: Moved all Columns code from imgui.cpp to imgui_widgets.cpp (#125) ago%!(EXTRA string=6 years)
omar bb2aa5e770 Docking: Making it possible to undock a node by clicking on the tab bar / title bar for the node. (#2645, #2109) ago%!(EXTRA string=6 years)
omar ea79992d9a Fixed old SetWindowFontScale() api value from not being inherited by child window. Added comments about the right way to scale your UI (load a font at the right side, rebuild atlas, scale style). ago%!(EXTRA string=6 years)
omar 130b44994e Debug, Metrics: Added "Tools->Item Picker" tool which allow clicking on a widget to break in the debugger within the item code. The tool calls IM_DEBUG_BREAK() which can be redefined in imconfig.h if needed. ago%!(EXTRA string=6 years)
omar 718e15c7de Docking: Fix so that an appearing window making a dock node reappear won't have a zero-size on its first frame (because dock node ->Size was 0.0 unlike ->SizeRef) (#2109) ago%!(EXTRA string=6 years)
omar e461e7bc7a Moved ImGuiColumnsFlags erroneously forward declared in imgui.h + demo bit. ago%!(EXTRA string=6 years)
omar 2a3517a399 Internals: Checkbox: Added undocumented mixed/indeterminate/tristate support via ImGuiItemFlags_MixedValue. (#2644) ago%!(EXTRA string=6 years)
omar f563e1a504 Internals: Renamed GetFrontMostPopupModal() to GetTopMostPopupModal() to be consistent. Renamed other locals to follow that terminology. ago%!(EXTRA string=6 years)
omar ae2c9f7101 Internals: Columns: Poke into WorkRect and use them in the GetContentRegionMax() functions. This should be a no-op, but preparing us to transition toward using WorkRect instead of ContentRegionRect. ago%!(EXTRA string=6 years)
omar e9b92d1cef Disable -Wpragmas warning in GCC to avoid relying on version checks, as unusual/forks/mods don't appear to always have same warning<>version. (#2618) ago%!(EXTRA string=6 years)
omar 5286ecb8a7 Version 1.72 WIP ago%!(EXTRA string=6 years)
omar 2da1c66d15 Version 1.71 + comments ago%!(EXTRA string=6 years)
omar 4597632662 Readme, comments, dear imgui prefixes ago%!(EXTRA string=6 years)
omar a8eb64fc54 Log/Capture: Fixed BeginTabItem() label not being included in a text log/capture. ago%!(EXTRA string=6 years)
omar afa3978ff6 Internals: Added drawlist and color arg to RenderArrow(), RenderBullet(). Reordered args for RenderPixelEllipsis. ago%!(EXTRA string=6 years)
omar 32ab0a82d6 imgui-test: Added IMGUI_TEST_ENGINE_LOG macro to emit into test log from core or user land. ago%!(EXTRA string=6 years)
omar 2b997141cf Made PushID() behave the same in 32-bit and 64-bit, by not padding the integer into a void*. (Also technically faster.) ago%!(EXTRA string=6 years)
omar 431aa4e456 Synced/merged minor cruft from docking branch to minimize drift. AFAIK the only meaningful no-op change is that the call UpdateHoveredWindowAndCaptureFlags() was moved above UpdateMouseMovingNewFrame() to match what docking branch has been doing for a while. ago%!(EXTRA string=6 years)
omar 06f1d2c101 Internals: Storing ScrollMax into a member. Mostly to facilitate debugging. Also locking down window->Scroll slightly lower in the Begin function. ago%!(EXTRA string=6 years)
omar fe32fde376 Internals: Renamed SizeContents to ContentSize, SizeContentsExplicit to ContentSizeExplicit. Tweaked Metrics->Show Rectangles functionality. ago%!(EXTRA string=6 years)