...
716 commits 50 files changed 0 commit comments 12 contributors
Commits on 2019-06-18
@omar omar Addendum to #2635. Add support for multi-viewports in SDL+DX!! example. making all Win32-centric back-ends handle PlatformHandleRaw. Using the field to use/store the HWND for internal purpose in SDL/GLFW back-ends. (#1542) adbbd17
@Vincent Hamm Vincent Hamm Viewport: Added PlatformHandleRaw. Update SDL+DX11 example. (#1542, #2635) 3e8eebf
@omar omar Restore SLN which in Docking branch includes more projects. 2cbc0f1
@omar omar Merge branch 'master' into docking e2c1f0a
Commits on 2019-06-17
@omar omar Fix monitor dpi info not being copied to main viewport when multi-viewports are not enabled. (#2621, #1676) + Tweaks, short path in FindPlatformMonitorForRect(). ca43436
@omar omar Merge branch 'master' into docking b27fd87
Commits on 2019-06-13
@omar omar Docking: Fixed rendering of outer decoration happening on non-visible docked window (#2623, #2109). Revealed by 0770449. We are actually better than before now, as previously those would get unnecessarily get rendered into a hidden draw list. 07d3083
Commits on 2019-06-12
@omar omar Merge branch 'master' into docking d3d998a
Commits on 2019-06-06
@omar omar Merge branch 'master' into docking 5f409c6
@omar omar Synced/merged minor cruft from master branch to minimize drift. Only meaningful change AFAIK is removing ImGuiComboFlags_PopupAlignLeft flag from the tab list combo emitted by TabBar. 63310ac
Commits on 2019-06-05
@omar omar Merge branch 'master' into docking e685089
Commits on 2019-06-04
@omar omar Merge branch 'master' into docking 440ad0b
@omar omar Comments (#2599). Moved branch Changelog above 1.71 wip one. Added some missing changelog bits. 5cdd788
Commits on 2019-05-31
@omar omar Merge branch 'master' into docking 596d81a
Commits on 2019-05-30
@omar omar Merge branch 'master' into docking 84f3ecc
@omar omar Merge branch 'master' into docking cc48f1e
Commits on 2019-05-29
@omar omar Merge branch 'master' into docking 8dc04a4
@omar omar Merge branch 'master' into docking c72040a
Commits on 2019-05-27
@omar omar Docking: Fixed DockBuilderRemoveNode() from overwriting other parent node flags when trying to move the CentralNode flag. c7c1bf1
@omar omar Docking: Saving local _NoResize flag. (#2583) 5b0e59d
@omar omar Docking: Saving the NoTabBar, NoWindowMenuButton, NoCloseButton fields of dock node into the .ini file. Added them to the Metrics window. (#2583, #2423, #2109). 7c06d9f
@omar omar Docking: Clarified terminology of docking/tablist/collapse button into Window Menu button matching master. Added private ImGuiDockNodeFlags_NoWindowMenuButton, ImGuiDockNodeFlags_NoCloseButton flags. (#2583, #2109) 511e32e
Commits on 2019-05-24
@omar omar Docking: Honor style.WindowMenuButtonPosition setting in docking node. e5dfa08
@omar omar Merge branch 'master' into docking afad952
Commits on 2019-05-22
@omar omar Merge branch 'master' into docking fda1365
Commits on 2019-05-21
@omar omar Merge branch 'master' into docking 0402211
Commits on 2019-05-19
@omar omar Docking: Fixed temporarily losing Dockspace flag when merging remaining sibling back into a parent node. (#2563, #2109) Would trigger an assert in the Passthru hole path. Broken by fd5859ed. 1575a3f
Commits on 2019-05-18
@omar omar Docking: Fixed undocking whole node (from collapse/docking menu button) from losing its size/pos. Made collapose/docking menu id easier to compute for testing. 7e772f6
@omar omar Docking: Fixed incomplete merge of 36e714a leading to undocking. #2109 2e5860b
Commits on 2019-05-13
@omar omar Merge branch 'master' into docking 4158cba
Commits on 2019-05-12
@Chris Savoie Chris Savoie Fixed unused variables warnings when asserts are compiled out. (#2551) b955e48
Commits on 2019-05-11
@Alzathar Alzathar Platform Binding for GLFW updated with the release of GLFW 3.3 (#2547) 02d6d2d
Commits on 2019-05-10
@omar omar Fixed a PVS Studio static analyzer warning. b668726
@omar omar Merge branch 'master' into docking 835a8b2
Commits on 2019-05-08
@omar omar Viewports: Minor tweaks. (#2471) 239c873
@omar omar Viewports: Fix to avoid SetNextWindowViewport being overrided by creation of a standalone viewport. (#2544, #1542) 9bf3f91
Commits on 2019-05-06
@omar omar Examples: DirectX9: Fixes for multi-viewports. Avoid using a depth/stencil target for secondary viewport. (#2520, #2502) e6c9825
@omar omar Examples: DirectX9: Fixes for multi-viewports, destroying all swap chains. (#2520, #2502) 9ddb849
@omar omar Merge branch 'master' into docking 76e6195
Commits on 2019-05-04
@ibachar ibachar Removed git merge leftovers 4f22a45
Commits on 2019-05-02
@omar omar Merge branch 'master' into docking 825b61e
Commits on 2019-04-29
@omar omar Merge branch 'master' into docking 7e67aba
Commits on 2019-04-25
@omar omar Examples: Emscripten: Fixed not enabling Docking and Nav by default. (#2494) a649d90
@omar omar Merge branch 'master' into docking dfb82d5
Commits on 2019-04-22
@omar omar Viewports: Avoid rendering/swapping secondary viewports that are minimized. (#1542, #2496) d0fb547
Commits on 2019-04-19
@omar omar Docking: Fixed an issue where DockBuilderSplitNode() wouldn't update the CentralNode shortcut immediately, which was problematic for immediately following DockBuilderDockWindow(). (#2109) 20f0cb0
@omar omar Merge branch 'master' into docking 03b64de
Commits on 2019-04-16
@omar omar Merge branch 'master' into docking 655ebe4
Commits on 2019-04-15
@omar omar Merge branch 'master' into docking b892028
Commits on 2019-04-13
@omar omar Docking: Internal: Added helper for automation to process docking at the mouse level. f70eace
@omar omar Docking: Fixed another issue where the resulting node of a split would sometimes recall the pos/size of previous host window. Spent a whole day adding framework for testing more of docking so hopefully we'll heading toward the magical world of less regressions. (#2109) 433a755
@omar omar Merge branch 'master' into docking 712203d
Commits on 2019-04-12
@omar omar Docking: Renamed target_node > node in some functions to facilitate debugger watch use across functions. 800fb26
@omar omar Docking: Rename typo Autority -> Authority + Rename DockContextNewFrameUpdateDocking -> DockContextUpdateDocking. 224f087
@omar omar Docking: Hold Shift to force disable docking. (#2109) 092426b
@omar omar Tests: Added hook/tweaks for imgui-test engine. + Fixed warnings. c6f1b7b
Commits on 2019-04-11
@omar omar Merge branch 'master' into docking 328e4fa
@omar omar Docking: Fixed an issue where newly created dock node override hosted window pos/size (#2109, #2386) f3110a5
Commits on 2019-04-08
@omar omar Merge branch 'master' into docking cf029b3
Commits on 2019-04-07
@omar omar Merge branch 'vulkan_fix_docking' into docking 7056032
@omar omar Merge branch 'master' into docking 50ceb25
Commits on 2019-04-05
@omar omar Merge branch 'vulkan_fix_master' into vulkan_fix_docking 9c364b1
@omar omar Vulkan, Viewports: ImGui_ImplVulkan_RenderDrawData and renderer back-end automatically manage ImGui_ImplVulkanH_WindowRenderBuffers for each viewports so user doesn't have to do it. (#2461, #2348, #2378, #2097) d61caf5
@omar omar Merge branch 'vulkan_fix_master' into vulkan_fix_docking (WARNING: as is the validation layer will error on same vertex/index buffer being used for all frames) e70f866
@MindSpunk MindSpunk Vulkan, Viewports: Fix for resizing viewport windows crashing. (#2472) 9acb158
@omar omar Vulkan, Viewports: Fixed ImGui_ImplVulkan_SetWindowSize() not recreating command-buffers, fence etc. (#2472, #2461, #2071) 1ba79ba
Commits on 2019-04-04
@omar omar Vulkan: Note for unsupported feature with multi-viewports. (#2071) 01de69d
@omar omar Vulkan: Viewports: Removed redundant field. 8ec2403
@omar omar Merge branch 'vulkan_fix_master' into vulkan_fix_docking 29269d2
@omar omar Merge branch 'master' into docking 43a85dd
@omar omar Viewport: Fixed PushClipRectFullScreen() missing out on negative coordinates. Among other things, the outer highlight during CTRL+Tab wouldn't appear in negative coordinates monitors. (~#2176, #1542) 9ba64f9
Commits on 2019-04-03
@omar omar Merge branch 'master' into docking 49fb8e6
Commits on 2019-03-28
@omar omar Docking: Fixed focus restore lagging by a frame when a tab stops being submitted. (#2109) Building on a little build of technical debt there, should transition toward a more general docking-agnostic system (#2304) 9bf6509
@omar omar Viewport: Renamed member + added note about a Docking issue with restoring focus. 5af385e
@omar omar Docking: Remove code in BeginDocked() to set HiddenFramesCannotSkipItems based on upcoming tab bar selection, solely based on focus (might break something subtle?). Follow-up to c355ed126775f36dfb19202af8526ba2ce183877. (#2453, #2109) 47219dd
@omar omar Docking: Disable SkipItems when directly/programmatically focused (possible generalization of code currently in BeginDocked which relies on tab bar interaction, will remove that code in next commit). (#2453, #2109) b6ae8a0
@omar omar Merge branch 'master' into docking a33d45d
Commits on 2019-03-27
@omar omar Docking: Added ImGuiDockNodeFlags_NoTabBar (not exposed publicly). (#2423, #2109) 5a665e4
@omar omar Docking: Internals: Moved CentralNode and HiddenTabBar state into LocalFlags for consistency. (#2423, #2109) fc95da8
@omar omar Docking: Separating SharedFlags vs LocalFlags in dock node so settings can be applied to individual nodes. Made _NoResize logic on single node applies as expected. (#2423, #2109) fd5859e
@omar omar Docking: Fix DockBuilderAddNode() not storing flags when creating floating node. 75e3793
@omar omar Renamed ImGuiDockNodeFlags_Dockspace to ImGuiDockNodeFlags_DockSpace for consistency. DockBuilderCopyDockspace() to DockBuilderCopyDockSpace(). Made casing consistent elsewhere. (#2109) 8d4b5fe
@omar omar Docking: Renamed ImGuiDockNodeFlags_PassthruDockspace to ImGuiDockNodeFlags_PassthruCentralNode. + Comments, shallow tweaks. (#2109) 04a9ce3
Commits on 2019-03-26
@omar omar Docking: Tweak and silencing PVS studio static analyzer (back to zero warnings among our selected ones). 87883ab
@Tom Watson Tom Watson Docking: Fixed an issue where windows docked into a node that's part of their dockspace wouldn't recover their order correctly after init. (#2109) (It only worked on floating dock node for the accidental reason that BeginDocked would generally early out on the first frame) f20725e
@omar omar Docking: Wrapping tab bar creation/destroy to make it easier to debug them. 26646f2
@omar omar Docking: Fixed crash with ImGuiDockNodeFlags_AutoHideTabBar flag. (#2423, #2109) f208fd7
Commits on 2019-03-25
@omar omar Merge branch 'master' into docking 9350158
Commits on 2019-03-18
@omar omar Docking: BeginDocked() doesn't need to rely on tab bar data (will allow removing tab bar). 7a51966
@omar omar Docking: Preserve existing docked nodes when setting the ImGuiDockNodeFlags_NoDockingInCentralNode flag. (#2423, #2109) c7619d4
Commits on 2019-03-15
@omar omar Viewports: Fixed being unable to refocus windows when ConfigViewportsNoTaskBarIcon + ConfigViewportsNoDecoration are enabled. (#2420, #1542) [@PathogenDavid] + comments. 7ba774a
Commits on 2019-03-13
@omar omar Merge branch 'master' into docking b1af4d3
@omar omar Viewport: DestroyPlatformWindow() skips calling user function if PlatformWindowCreated is set. + Clarified comment about implicit Debug viewport which may be hogging a viewport. c3f20f6
@David Maas David Maas Fixed main viewport not being marked as created, which broke updating the IME input position for the main viewport. e7dca4f
Commits on 2019-03-12
@omar omar Merge branch 'master' into docking 9afb849
Commits on 2019-03-11
@omar omar Docking: Fixed node merging altering window position incorrectly in a way that would make SizeContents incorrect for the next frame (making scrollbar flicker). (#2414, #2109) e1acb0b
@omar omar Viewport: Popups and Tooltips viewports are correctly parented to the parent window's viewport. (#2409, #1542) 3ead982
@omar omar Merge branch 'master' into docking f7db4fa
@omar omar Viewports: Fixed delayed window pos->viewport pos sync leading to monitor not being updated at the time of clamping window position in Begin. (#2415, #1542) cf4fcc4
@omar omar Viewports: Renamed ConfigViewportsNoParent to ConfigViewportsNoDefaultParent. Fix outdated comments in examples. 3eedb54
Commits on 2019-03-10
@omar omar Docking: Fixed an issue where removing the last window from a dockspace node that is not a central node without remove the node. (#2414, #2109) ecf7666
Commits on 2019-03-07
@omar omar Merge branch 'master' into docking d77d341
@omar omar Refactor: Move viewport code under other subsystem to simplify merging (4) (moving in multiple commits to make diff/patch behave nicely) 5ce93bc
@omar omar Refactor: Move viewport code under other subsystem to simplify merging (3) (moving in multiple commits to make diff/patch behave nicely) 54a129a
@omar omar Refactor: Move viewport code under other subsystem to simplify merging (2) (moving in multiple commits to make diff/patch behave nicely) bdf60da
@omar omar Refactor: Move viewport code under other subsystem to simplify merging (1) (moving in multiple commits to make diff/patch behave nicely) bbb543f
@omar omar Fix for Android char being unsigned by default (#2408) 28d8eb2
Commits on 2019-03-06
@Gilad Reich Gilad Reich Examples: DirectX9: Added support for multi-viewport (#2394) 0a6c5bc
@omar omar Merge branch 'master' into docking e91d275
@David Maas David Maas Removed redundant declaration of SetNextWindowClass. (#2402) 8b8ab1d
Commits on 2019-03-05
@omar omar Merge branch 'master' into docking e02d601
Commits on 2019-03-04
@omar omar Merge branch 'master' into docking 8414c0b
Commits on 2019-03-03
@omar omar Merge branch 'master' into docking 49eb5f0
@Richard Mitton Richard Mitton Examples + Viewport: GLFW: context wasn't set when using multiple windows. (#2392) 7a536f1
Commits on 2019-02-27
@omar omar Merge branch 'master' into docking ff0c6c2
Commits on 2019-02-26
@omar omar Moved Settings section above Docking to facilitate master<>docking merges. 4eecf80
@omar omar Moved Logging/Capturing section above Docking to facilitate master<>docking merges. 104294c
@omar omar Merge branch 'master' into docking 6b43a31
Commits on 2019-02-24
@omar omar Merge branch 'master' into docking 8915f79
Commits on 2019-02-22
@omar omar Merge branch 'master' into docking 87ded34
Commits on 2019-02-19
@omar omar Comments for Linux/Mac (#2117) ff0f9aa
@omar omar Merge branch 'master' into docking 9dc0246
Commits on 2019-02-18
@omar omar Docking: Fixed bad ever-growing/ leak (accumulating text into TabsNames forever, fix d38f4dc14 from February 5th, affected docking branch only). (#2109) 7573d10
@omar omar Docking: Made DockBuilderSplitNode/DockNodeTreeSplit work even if the node doesn't have a size yet. (#2357, #2109) Followup to fa0ce4b7d, at that time I came to the conclusion that programmatic split couldn't work without knowing the size ahead of it. I forgot the reason for that. May bite us back! 5412cdf
@omar omar Docking: Fixed assert in DockContextProcessDock() preventing some uses of DockNodeBuilder api. (#2357, #2109) 3de440f
@omar omar Merge branch 'master' into docking 5bf9029
Commits on 2019-02-14
@omar omar Merge branch 'master' into docking 09c9bf2
Commits on 2019-02-13
@omar omar Examples: Win32: Removed unused code left-over from merge e9c625a1dc91818385aea650716200e6119fa5f6 b460764
Commits on 2019-02-12
@omar omar Merge branch 'master' into docking 8691b56
Commits on 2019-02-11
@omar omar Viewport: SDL: Inherit SDL_WINDOW_ALLOW_HIGHDPI flag from main viewport. (#2306) 7f6a025
@omar omar Merge branch 'master' into docking 2cada3c
Commits on 2019-02-06
@omar omar Merge branch 'master' into docking 4a3a895
Commits on 2019-02-05
@omar omar Examples: SDL: Fix for Emscripten/Android/iOS on Docking branch. f6fbb99
@omar omar Merge branch 'master' into docking be107ba
Commits on 2019-02-03
@omar omar Docking: Fixed less of node size/pos caused by 1f2bdd37 (#2109) f902435
@omar omar Docking: Fixed dragging docked window with _NoMove flag (#2325) 80d51c6
@omar omar Merge branch 'master' into docking 7227454
@omar omar Revert part of change from 5536eded. Fixed drag and drop in docking branch. (#2331, reopening #2325) f087359
Commits on 2019-02-01
@omar omar Removed io.DisplayVisibleMin/DisplayVisibleMax (which were marked obsolete and removed from viewport/docking branch already). e215809
@omar omar Examples: Made imgui_impl_win32 drag gdi32.lib for GetDeviceCaps(). (#2327) 03b0266
@omar omar Merge branch 'master' into docking (enable range_select merge) d1c45c0
@omar omar Fixed Clang/Win32 warning. e30babe
@omar omar Merge branch 'master' into docking a608156
@omar omar Docking: Extracted code into a DocknodeUpdateTabListMenu() functions + minor other changes. 65a2350
@omar omar Comments. Fix duplicate entries in About box. Synchronize a few small changes from Master branch. cbf24a9
Commits on 2019-01-31
@omar omar Merge branch 'master' into docking f906d53
@omar omar Docking: Builder: Added DockBuilderSetNodePos, DockBuilderSetNodeSize, allow DockBuilderAddNode creating floating node (dockspace requires ImGuiDockNodeFlags_Dockspace) (#2109) 1f2bdd3
@omar omar Docking: VisibleWindow of a node spread its _NoMove attribute to the node (fixed dragging or undocking of dock node host from collapse button). (#2325, #2109) dc8ff68
@omar omar Docking: Fixed faulty undocking of windows with the _NoMove flag. (#2325, #2109) Whereas BeginAsDockableDragDropTarget could be reworked to filter, we simply set g.HoveredWindowUnderMovingWindow to be NULL when MovingWindow is not set, which was the initial intent. Also fixed some comments and removed unused braces in TabItemEx(). 5536ede
@omar omar Docking: Removed unnecessary ImGuiTabItemFlags_DockedWindow internal flag. 578e15f
Commits on 2019-01-30
@omar omar Viewport: Added ImGuiViewportFlags_NoFocusOnClick + support in imgui_impl_win32. Made windows with no decoration always set the _NoFocus flags. (#1542, #2117) Fix e.g. clicking on protruding combo box stealing highlight from parent window with decoration. e114337
@omar omar Viewport: Popups by default merge into parent/host viewport as they have no decoration (same as menu/child). (#1542) 8563ef3
Commits on 2019-01-29
@omar omar Docking: Comments and tidying up (should be no-op) 37fb531
@omar omar Added ImGuiDockNodeFlags_AutoHideTabBar. (#2109) 86d3bba
@omar omar Docking: Exposing extra flag in Configuration panel. Moved some forgotten Changelog entries at the right place. 2ccc6d2
Commits on 2019-01-27
@omar omar Merge branch 'master' into docking 13a5f5b
@omar omar Removed trailing spaces (docking branch) 737a364
Commits on 2019-01-23
@omar omar Docking: Fixed various border / padding related inconsistency with dock node vs floating windows. (#2109) 07ff47b
@omar omar When resizing from an edge, the border is more visible and better follow the rounded corners. Border rendering moved to RenderOuterBorders so it can be called in a different order for docking. (#1495, #822) 0737433
@omar omar Docking: Fixed overlapping issue with greyed out close button. 0bda7f1
@omar omar Docking: Added ImGuiDockNodeFlags_Dockspace instead of node internal IsDockspace toward allowing the DockBuilder API to create non-dockspace nodes. 9f96fcf
@omar omar Docking: Fix a focusing issue where dock node wouldn't be moved to the front as expected. bfacbac
@omar omar Comments + clear out VisibleWinodw field (should have no effect) 86fce79
Commits on 2019-01-22
@omar omar Docking: Comments and renaming locals to facilitate debugging. c81a5a6
Commits on 2019-01-21
@omar omar Merge branch 'viewport' into docking 0947fa3
@omar omar Merge branch 'master' into viewport cb9a6b8
@omar omar Comments 2d21a64
Commits on 2019-01-20
@omar omar Merge branch 'viewport' into docking f94af2f
@omar omar Merge branch 'master' into viewport 8079344
Commits on 2019-01-18
@omar omar Merge branch 'master' into viewport 82e31d3
Commits on 2019-01-17
@omar omar Examples: Win32: Fix for older Windows SDK. acdb482
@omar omar Merge branch 'viewport' into docking b5144e4
@omar omar Merge branch 'master' into viewport e9c625a
Commits on 2019-01-16
@omar omar Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!) [docking branch] d1851ed
@omar omar Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!) 32c4e01
@omar omar Docking: Demo: Fixed docking document window into parent window. (#2286) 2f9bae1
Commits on 2019-01-15
@omar omar Merge branch 'viewport' into docking 8a45c56
@omar omar Merge branch 'master' into viewport 9391a97
@omar omar Viewport: Made platform_io.Monitors mandatory for proper multi-viewport use. 79d497e
@omar omar Merge branch 'viewport' into docking 515ad62
@omar omar Merge branch 'master' into viewport 73353fa
Commits on 2019-01-14
@omar omar Merge branch 'viewport' into docking ff4bd75
@omar omar Merge branch 'master' into viewport e24674f
Commits on 2019-01-13
@omar omar Merge branch 'viewport' into docking 529fccd
@omar omar Merge branch 'master' into viewport 4ee4f65
Commits on 2019-01-10
@omar omar Docking: Fixed docking a split node into the empty central node of a dockspace leading to the central node tag being incorrectly carried along. (#2109) 7cc86d4
@omar omar Merge branch 'viewport' into docking 8011197
@omar omar Merge branch 'master' into viewport c96aaef
Commits on 2019-01-07
@omar omar Merge branch 'viewport' into docking 6b32570
@omar omar Merge branch 'master' into viewport 5af930f
Commits on 2019-01-03
@omar omar Docking: Fix for handling of orphan/inactive dock node with ConfigDockingTabBarOnSingleWindows (would crash). 515ecbd
@omar omar Docking: Fixed a bug undocking a window from its tab when it is the only docked window of a root dockspace with ConfigDockingTabBarOnSingleWindows enabled. 7f7e8ee
@omar omar Comments 4e98d43
@omar omar Merge branch 'viewport' into docking 5278da9
@omar omar (Breaking change) Reorganized Viewports advanced flags, moved into new io.ConfigViewportsXXX flags. Pay attention that ImGuiConfigFlags_ViewportsDecoration became ConfigViewportsNoDecoeration, so the value is inverted! (#1542) e1ed27a
@omar omar Viewport: Added ConfigViewportsNoParent to parent viewport default to NULL and not main viewport. Fix eg.. popups appearing erroneously focusing parent window. c8349d3
@omar omar Viewport: Fix for minimization of individual viewports (the current back-end forcing a parent/child relationship between secondary viewports and the main viewport have hidden this issue). Follows d8ab2c1ac. 606175b
@omar omar Viewport: Fixed minimization of main viewport leading to it being omitted from platform_io.Viewport list where the users assume it is at index 0. Fix d8ab2c1ac. It wasn't a problem when other viewports were child of the main viewport because they would all be minimized together. (#1542) 05bc323
@omar omar Viewport: Added minimum viable information in the Changelog. 599a526
Commits on 2019-01-02
@omar omar Docking: Merge fix duplicate line + added assert to ease debugging. c3efcca
@omar omar Merge branch 'viewport' into docking b26f16a
@omar omar Merge branch 'master' into viewport a0c2e55
@omar omar Docking: Forward WindowClass from node to host window. 5aebfed
@omar omar Merge branch 'viewport' into docking ce1626a
@omar omar Viewport: Added ImGuiWindowClass / SetNextWindowClass() (concept imported from Docking ImGuiDockFamily), which currently allows to overwrite viewport flags on a per-window basis. Exposed FindViewportByID(). Win32: Support for ParentViewportId. (#1542) 0cabe4d
@omar omar Docking: Renamed SetNextWindowId() -> SetNextWindowID() for consistency. (function vs member are still horribly inconsistent atm) 0d6e3ab
@omar omar Viewport: Win32: Workaround to the fact that ::WindowFromPoint() seems to return Windows using ImGuiViewportFlags_NoInputs / HTTRANSPARENT when dragging nearby the platform title bar. This is to allow using platform decoration. I don't understand this well atm. (#1542) cfcad42
@omar omar Viewport: Added Platform_UpdateWindow hook for general purpose: Rework Win32 code to reflect viewport flags changes into Win32 while the window is active. 4a6f95a
@omar omar Viewport: Reorder flags. Set owned viewport common decoration flags in Begin(). Moved code in UpdateViewportsEndFrame() before we introduce family/class based overrides. 5305c32
@omar omar Merge branch 'master' into viewport 951c9dd
@omar omar Docking: Agressively assert when CentralNode is a not a leaf node in order to find our bug. 4ea9fdb
@omar omar Renamed ImGuiDockFamily to ImGuiWindowClass. Renamed CompatibleWithClassZero to DockingAllowUnclassed. (#2109) e194219
Commits on 2018-12-21
@omar omar Viewport: Misc comments following user feedbacks.. a71d3c8
@omar omar Fix merge in Docking branch, remove ConfigDockingWithShift flag from DX11 example + misnamed function. 238321c
@omar omar Merge branch 'viewport' into docking e181b0c
@omar omar Merge branch 'master' into viewport 9d0bc3f
@omar omar Examples: SDL: Fixed compilation for SDL 2..0.3 and less (running on our test servers) and clarified a bit of the messy situation. Followup to 8dd83c5. (#1542, #2117) afe9c5c
Commits on 2018-12-20
@omar omar Merge branch 'viewport' into docking 81a2546
@omar omar Merge branch 'master' into viewport + added style tweak block when viewports are enabled ee5560a
@omar omar Examples: Viewport: Moved the "make current GL context" to reduce the amount of call and hopefully be more explicit about viewport enabled vs disabled requirements. (#1542) 62cfdce
@omar omar Viewport: Fixed not clearing request flags in main viewport, which led some back-end (SDL) to break on resize as PlatformRequestResize would stay true forever and inhibit new sizes passed to AddUpdateViewport(). (#1542) d9fda22
@omar omar Examples: SDL: SDL_GetMouseState() seems problematic, movements feels laggy in the non-viewport code path. (#1542, #2117) 8dd83c5
@omar omar Docking: Fix an edge case failing to dock into an explicit dockspace which only have inactive nodes (because all the windows are inactive). (#2246, #2109) 5794c04
@omar omar Merge branch 'viewport' into docking e043b89
@omar omar Removed IMGUI_HAS_TABS from Docking branch, it's not defined anywhere anymore. 8fc19d2
@omar omar Merge branch 'master' into viewport 02501f0
@omar omar Viewport: Corrected/clarified comments. Moved RenderPlatformWindowsDefault() next to UpdatePlatformWindow(). Removed unnecessary flag check. a0e5bb9
Commits on 2018-12-18
@omar omar Merge branch 'viewport' into docking 088ef66
@omar omar Merge branch 'master' into viewport 9c916cd
Commits on 2018-12-14
@omar omar Merge branch 'master' into docking ac9512e
@omar omar Viewport, DPI: Now using DpiScale from the ImGuiPlatformMonitor array instead of calling Platform_GetWindowDpiScale() before the platform window creation. Might even tentatively see if things work out without Platform_GetWindowDpiScale. (#1676) 5d20da1
Commits on 2018-12-13
@omar omar Merge branch 'viewport' into docking 9b09c75
@omar omar Merge branch 'master' into viewport 2a1e903
@omar omar Metrics: Fixed crash when viewports are disabled (g.MouseLastHoveredViewport is never set). e50894c
Commits on 2018-12-11
@omar omar Merge branch 'master' into docking 991b16c
@omar omar Demo: Fix collateral damage of 54a60aa 2886e0b
@omar omar Merge branch 'viewport' into docking 067b691
@omar omar Merge branch 'master' into viewport c40feab
@omar omar Docking: Fix io.ConfigWindowsMoveFromTitleBarOnly for docking branch. 2d4018a
Commits on 2018-12-10
@omar omar Merge branch 'viewport' into docking + moved io.ConfigFlags ImGuiConfigFlags_DockingNoSplit to io.ConfigDockingNoSplit e6439e1
@omar omar Merge branch 'master' into viewport 26b9e2d
Commits on 2018-12-08
@omar omar Tabs: Fixed crash when using TabItem in a regular (non-docking) tab bar. (#2231) 3a5e758
Commits on 2018-12-06
@omar omar Merge branch 'viewport' into docking f768727
@omar omar Merge branch 'master' into viewport a03846b
@omar omar Viewport: Win32, GLFW, SDL: Clarified back-ends by using global mouse position direction. GLFW: disabled io.MouseHoveredViewport setting under Mac/Linux. (#1542, #2117) + various comments. f3a0b17
@omar omar Viewport: Fix handling of PlatformRequestResize/PlatformRequestPos. when OS decoration are enabled via ImGuiConfigFlags_ViewportsDecoration . ac52d9d
Commits on 2018-12-05
@omar omar Viewport: Fix handling of PlatformRequestResize/PlatformRequestPos. when OS decoration are enabled via ImGuiConfigFlags_ViewportsDecoration . e2082a6
@omar omar Docking: Adjusting the docking popup menu position so it tends to stay within the same viewport. b94f024
Commits on 2018-12-04
@omar omar Docking: Documenting an issue. Renamed member of ImGuiDockFamily. b96b1f2
@omar omar Docking: Added io.ConfigDockingTabBarOnSingleWindows option (mostly made possible by the previous fixes). Note that dock node have regressions compared to current floating window: no collapse, no auto-resize, resize grip under the scrollbar, border issues, general overhead. Will tackle those. 6644f1f
@omar omar Docking: Focus fix (missing line in 8bac6d4) 8cac70d
Commits on 2018-12-03
@omar omar Merge branch 'viewport' into docking 5105c6c
@omar omar Merge branch 'master' into viewport 3a678d4
@omar omar Docking: Another attempt at tidying the inconsistent focus / tab bar reordering issues, and toward generalizing single window dock nodes. (#2109) 8bac6d4
@omar omar Docking: Fix generalizing the transition from loose windows to dock node so we can switch to single window dock node while transferring viewports (vs creating two viewports and dropping one). + Extracted DockContextGenNodeID out of DockContextAddNode(). 2da200f
@omar omar Viewport: Minor tweaks, better struct layout. f6b6ad1
@omar omar Viewport: Fixed a viewport bug which led some popups to merge in underlying host viewport when they should be z-over their parent viewport. 3e84f7c
@omar omar Merge branch 'viewport' into docking ac10889
@omar omar Somehow VS keeps modifying this GUID so I am going to playing along with it. 89a530b
@omar omar Merge branch 'master' into viewport 65e579e
Commits on 2018-11-30
@omar omar Fixed a text rendering/clipping bug introduced in 1.66 (on 2018-10-12, commit ede3a3b9) that affect single ImDrawList::AddText() calls with single strings larger than 10k. Text/TextUnformatted() calls were not affected, but e.g. InputText() was. 34e18ef
@omar omar Fixed a text rendering/clipping bug introduced in 1.66 (on 2018-10-12, commit ede3a3b9) that affect single ImDrawList::AddText() calls with single strings larger than 10k. Text/TextUnformatted() calls were not affected, but e.g. InputText() was. 8289e5f
@omar omar About: Added build/system info relating to Docking branch. 025e00c
@omar omar Merge branch 'viewport' into docking f78b5a0
@omar omar About: Added build/system info relating to Viewport branch. ec49a48
@omar omar Merge branch 'master' into viewport afeefad
@omar omar About, IO: Added io.BackendPlatformName, io.BackendRendererName for informational/QA purpose. a423f03
@omar omar Added ShowAboutWindow(), About Window now showing various config/build information. 4ef06f5
@omar omar Merge branch 'viewport' into docking 753223b
@omar omar Merge misc/shallow changes from Docking branch to minimize drift: moved some blocks, added comments. f663277
@omar omar Viewport: Fixed a bug where tooltips on their first frame didn't find a monitor leading to the "recovery" code to revert it to the main viewport for a frame. (#1542) 1c7be88
Commits on 2018-11-29
@omar omar Merge branch 'viewport' into docking 3c114b2
@omar omar Viewport: Avoid calling platform functions when window is not created (apart from Platform_GetWindowDpiScale, documented as such). Main viewport situation is still ambiguous. (#1542) 2fbbcaa
@omar omar Viewport: Misc renaming. 36cbe1e
@omar omar Docking: Added io.ConfigDockingTransparentPayload option (to use with ImGuiConfigFlags_ViewportsNoMerge) 19d17ed
Commits on 2018-11-28
@omar omar Viewport: imgui_impl_sdl2: Added support for PlatformIO Platform_SetWindowAlpha. 01f940d
@omar omar Examples: DX12: Fixed compilation of imgui_impl_dx12.cpp in viewport branch. Multi-viewport is still not functional. 19c4fa8
Commits on 2018-11-27
@omar omar Merge branch 'viewport' into docking 3bcc25f
@omar omar Viewport: Comments. 4cadb57
@omar omar Merge branch 'master' into viewport 99c32ed
@omar omar Viewport: Better support for toggling ImGuiConfigFlags_ViewportsEnable. (#2196) c08b4b4
@omar omar Docking: Fixed debug Rebuild operation. e138a5f
@omar omar Docking: Maintain CentralNode. When SetNextWindowDockID() on a now split node id, we dig to find the central node or the last focused node. (#2109) fc16e54
@omar omar Docking: Comments + maiintain LastFrameFocused per node + using bitfiield for docking bools. 4575354
Commits on 2018-11-26
@omar omar Docking: Added internal DockBuilderGetCentralNode(). Fixed being unable to undock whole node from dock button in DockSpace with a central node. (#2109) 3f51c83
@omar omar Docking: Added ImGuiDockNodeFlags_NoResize. (#2109) 962dcb4
@omar omar Merge branch 'viewport' into docking b8d9c5c
@omar omar Viewport: Merging fixes + relying on multiple viewport overlaps. Follow-up to previous attempts are reworking the split/merge mechanisms. (#1542) 1a0d257
@omar omar Viewport: Comment to suggest making WindowBg opaque when viewports are enabled. 12a1e7d
@omar omar Docking: Hidden tab-bar triangle reflects focus but using Button colors. (#2109) 4a8efd7
@omar omar Docking: Fixed double-overlay when dragging window over one of the (four cardinal) outer drop boxes. (#2109) 66cfbbf
@omar omar Docking: Added context menu option to hide the tab bar of single-window dock nodes, similar to Unreal. (#2109) d23c69d
@omar omar Viewport: Fixes moving child menu viewport (fix 379733a). 1e7b50a
@omar omar Viewport: Fixes moving child menu viewport (fix 379733a). c93e926
@omar omar Merge branch 'viewport' into docking ddc3f8f
@omar omar Merge branch 'master' into viewport 5261e5a
@omar omar Viewport: Fix viewport regression with protruding child window creating their own viewport. (fixes cae4d02, 760c1d95) (#1542) 379733a
Commits on 2018-11-23
@omar omar Docking: Added ImGuiConfigFlags_DockingNoSplit flag. (#2109) 131de7a
@omar omar Viewport: Added support for minimized window which caused problem when ImGuiBackendFlags_HasMouseHoveredViewport was not supported. (#1542) + todo d8ab2c1
@omar omar Viewport: Avoid unnecessary reapplying platform pos/size every frame. (#2205) + Fix GLFW ImGui_ImplGlfw_CreateWindow() from not applying position immediately. Clear LastNameHash properly (bug already fixed in Docking branch) 862781b
Commits on 2018-11-22
@omar omar Viewport: Merging/Extracting to/from main host viewport is now performed based on current state rather than triggers. Windows which don't fit in host window are now consistently in their own viewport. Toward simplifying the UpdateSelectWindowViewport() function. Probably broke something.. (#1542) cae4d02
@omar omar Viewport: UpdateTryMergeWindowIntoHostViewport() calls BringWindowToDisplayFront() - possible now that BringWindowToFocusFront() is a different function. 1f78e08
@omar omar Viewport: Merging/Extracting to/from main host viewport is now performed based on current state rather than triggers. Windows which don't fit in host window are now consistently in their own viewport. Toward simplifying the UpdateSelectWindowViewport() function. Probably broke something.. (#1542) 760c1d9
@omar omar Viewport: UpdateTryMergeWindowIntoHostViewport() calls BringWindowToDisplayFront() - possible now that BringWindowToFocusFront() is a different function. 510f0e5
@omar omar Viewport: Stop relying on viewport->CreatedPlatformWindow to create Platform_DestroyWindow and Renderer_DestroyWindow. Explicitly require Platform_GetWindowFocus() to require supporting empty data. d9c5482
@omar omar Merge branch 'viewport' into docking 2515413
@omar omar Merge branch 'master' into viewport d87b80c
Commits on 2018-11-15
@omar omar Merge branch 'viewport' into docking 4a43f34
@omar omar Merge branch 'master' into viewport + comments dcbf976
Commits on 2018-11-13
@omar omar Viewport: BeginMainMenuBar(): explicitly set viewport to avoid creating new one when ImGuiConfigFlags_ViewportsNoMerge is set + misc shallow changes. f2d577c
@omar omar Viewport: BeginMainMenuBar(): explicitly set viewport to avoid creating new one when ImGuiConfigFlags_ViewportsNoMerge is set + misc shallow changes. ae34241
@omar omar Docking: Fixed a regression where clicking a Tab wouldn't immediately set NavWindow. Which led to breaking the NavSaveLastChildNavWindow/NavRestoreLastChildNavWindow logic. (#2109) 1546153
Commits on 2018-11-08
@omar omar Merge branch 'master' into viewport + specific changes for GLFW callbacks a3d6554
Commits on 2018-11-06
@omar omar Merge branch 'viewport' into docking 565af90
@omar omar Viewport: Fixed SDL+OpenGL2 example to work with multi-viewports. (#2175) 797f204
@omar omar Examples: SDL: Tweaked Windows instructions and batch files. (#2175) 5ea0839
Commits on 2018-11-05
@omar omar Examples: Win32: Handle UTf-8 in platform window title setting. (#2164) 9ee86f2
@omar omar Merge branch 'master' into viewport 52ca91c
Commits on 2018-10-25
@omar omar Merge branch 'viewport' into docking 168af9b
@omar omar Docking: Tweaked tooltip on tabs so they don't show immediately when holding and releasing a tab (using HoveredIdNotActiveTimer) + Minor refactor + Removed legacy .ini parsing. 1a6eea0
@omar omar Merge branch 'master' into viewport 50f6e12
@omar omar Added DockSpaceOverViewport() call, not sure about this because of the menu bar limitation. (#2109) c547b2e
Commits on 2018-10-24
@omar omar Docking: Fixed not saving .ini file correct if DockingEnable flag is cleared. (#2109) 56ba60e
Commits on 2018-10-23
@omar omar Viewport, Docking: Fixed incorrectly setting the ImGuiViewportFlags_NoInputs flag, affecting split docking node. (#2109) f270c81
@omar omar Viewport, Docking: Fixed incorrectly setting the ImGuiViewportFlags_NoInputs flag, affecting split docking node. (#2109) 745fda0
Commits on 2018-10-18
@omar omar Merge branch 'viewport' into docking 5f8c9ae
@omar omar Merge branch 'master' into viewport 056af2b
@Brandon Brandon Examples: SDL: Fixed usage of SDL_GetDisplayDPI (#2137, #1676) 5f79a28
Commits on 2018-10-15
@omar omar Viewport: Exposed GetOverlayDrawList(ImGuiViewport* viewport) in public API. (#1542, #1660, #1878, etc.) 69db792
@omar omar Demo: Testing return value of BeginTabBar() for consistency. 8b95621
Commits on 2018-10-12
@omar omar Merge branch 'viewport' into docking e6cc547
@omar omar Merge branch 'master' into viewport e73217d
@omar omar Fixes crash introduced in previous commit 9cf94d5. 2eaf5b0
@omar omar Merge branch 'master' into docking c398153
@omar omar Docking: Fixed Modal window from being dockable. 33994bb
Commits on 2018-10-11
@omar omar Merge branch 'viewport' into docking. 15ec78e Fixes the update of title buffer when docked in a leaf dock node with a single window. Added comment about overwriting DockIsActive in DockNodeUpdate(). 7525637
@omar omar Internal: Moved stored window name update code to the first_begin_of_the_frame block. This will be useful in the Docking branch. 15ec78e
Commits on 2018-10-09
@omar omar Viewport: Added ImGuiConfigFlags_ViewportsDecoration to re-enable platform decoration (#1542) 3a7828d
@omar omar Viewport: Added ImGuiConfigFlags_ViewportsDecoration to re-enable platform decoration (#1542) 7b3433c
Commits on 2018-10-08
@omar omar Docking: Kept ImGuiDockNodeFlags_PassthruDockspace and removed ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg. Doesn't include ImGuiDockNodeFlags_NoDockingInCentralNode. (#2109) 84507cc
Commits on 2018-10-05
@omar omar Docking: Removed context parameter from internal DockBuilderXXX api at it is expected we transition it to be public facing. (#2109) cb76c08
Commits on 2018-10-04
@omar omar BeginTabItem: Fixed missing parameter name in .h file messing up with cimgui generator. (#2115) 407822e
Commits on 2018-10-03
@omar omar Docking: Added ImGuiDockNodeFlags_PassthruDockspace mode (subdivided in three flags: ImGuiDockNodeFlags_NoDockingInCentralNode, ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg). Added internal facility for register a rectangular hit-test hole in window. Updated DockSpace demo accordingly. (#2109) 4e30698
@omar omar Docking: Added ImGuiDockNodeFlags_NoOuterBorder, tweaked DockSpace demo to remove window border. Made docking splitter use the same standard setting as resizing from edges. (#2109) 2dd8338
@omar omar ButtonBehavior, ImGuiButtonFlags_FlattenChildren flag can be used from a child window. Would typically affect calling SplitterBehavior() from a child window. 059560d
@omar omar Docking: Renamed "DocRoot/DocumentRoot" to "CentralNode", more self explanatory. Moved Splitter update higher up in DockNodeUpdate() + minor misc tweak. (#2109) d348d86
@omar omar Docking: Added ImGuiDockNodeFlags_NoDockingInsideDocRootNode flag. Honoring ImGuiDockNodeFlags_NoSplit in child node is already split (so we can use DockBuilder and then lock the layout). Added those options to the demo. (#2109) 1d3862b
@omar omar Docking: Fixed DockSpace() child window displaying a scrollbar behind the node backgrounds. Rename ImGuiCol_DockingBg to ImGuiCol_DockingEmptyBg. Added ImGuiDockNode::IsLeaftNode(). (#2109) bd82539
Commits on 2018-10-02
@omar omar Merge branch 'viewport' into docking 83f55c9
@omar omar Merge branch 'master' into viewport 33b88a0
@omar omar Docking: Fixed crash using DockBuilderSplitNode(). (#2109) 44bfa24
Commits on 2018-10-01
@omar omar Docking: Renamed io.ConfigDockingWithKeyMode to io.ConfigDockingWithShift. 2cff3f6
@omar omar Docking: Better tracking of current dock id for inactive and uncreated windows (in settings etc.). + Fixed assert when docking a single-visible leaf node of a hierarchy into another b48ed9e
@omar omar Docking: Fixes for C++03 compilers. 4e717b5
Commits on 2018-09-30
@omar omar Docking: Fixed extracting a dock node from a document root: document root should be preserved. ae657a3
@omar omar Docking: Reorganizing some of the tab-bar selection and window focus related code. ed3c015
@omar omar Docking: Demo: Displaying a message if master docking flag is disabled. + DockSpace() early out + comments. 9cfc40c
@omar omar Docking: Various sanity fixes + fixed tab-bar items sorting issue when docking single window with a dock node into single window without dock node. 6ebc63d
@omar omar Docking: Fix DockContextRebuild() temporarily invalidating dockid reference leading to undesirable merging of nodes. 1ae0a1e
@omar omar Docking: Fixed dock node with single window accidental stealing of non-owned host viewport (leading to general havoc). 46dff42
@omar omar Style: Added style.TabRounding setting. 35d1fb7
Commits on 2018-09-28
@omar omar Docking: Added DockBuilderCopyDockspace() wip. Added DockBuilderCopyWindowSettings(), renamed DockBuilderForkNode() to DockBuilderCopyNode(). 876a329
Commits on 2018-09-26
@omar omar Added FindOrCreateWindowSettings() internal helper. 93896d5
@omar omar Docking: Reworked DockContextPruneUnusedSettingsNodes() to prune entire unused trees. 18ffb7d
@omar omar ImPool: Added Reserve() helper function. c0a89f8
@omar omar Merge branch 'viewport' into docking c6193d0
@omar omar Merge branch 'master' into viewport 6cc380f
@omar omar Docking: Fixed tab order restoring (follow up to 67be485e, broken in 455dc6e2) 4053d9d
@omar omar Docking: Added DockBuilderForkNode() primitive for usage for user code to fork/copy entire layouts. This will probably need to be added to as I find ways to migrate patterns from user code to the library. Added IMGUI_DEBUG_DOCKING_INI helper to facilitate debugging. (+1 squashed commits) 45731cc
@omar omar Docking: Minor renaming. DockContextAddNode() uses 0 as marker for automatic ID selection + TODO update and moved docking entries to docs/TODO.txt dc92431
Commits on 2018-09-25
@omar omar Docking: Renamed SetNextWindowDock() to SetNextWindowDockId(). Added GetWindowDockId(). d3e8e57
@omar omar Docking: Reworked SetNextWindowUserType() as SetNextWindowDockFamily(), allowing multiple scene to be tagged with their scene id and not receive tabs from other scene + persistent storage for family id to allow for docking tree fork/remap. 53a5d32
@omar omar Docking: Added DockBuilderGetNode() wrapper for consistency. 85e1e2b
Commits on 2018-09-24
@omar omar Docking: Added DockBuilderRemoveNode() + various tweaks. Fixed dragging/undocking dock node from CollapseButton. 9960ccd
@omar omar Docking: Fix for undocking node where the dockspace node is attached to an immovable parent window. + Tweak .ini output. 4021776
@omar omar Docking: Some DockBuilder functions are applied on settings data if windows are not present. Added DockBuilderCreateNode which needs a size else if we can't split properly. DockNodeTreeSplit() doesn't clamp SizeRef. (+1 squashed commits) fa0ce4b
@omar omar Docking, Viewport: Reworked viewport inheritance/transition so that extracting a dock node from a split node owning its viewport will have both viewports be in the expected OS z-order. (The lower window re-use the exiting viewport, the detached node uses a new viewport: 2a5ce18
@omar omar Docking, Viewport: Rework ownership transfer/stealing to fix issues where non-child windows could be stick marked as not owning their viewport. ae4b838
@omar omar Docking+Viewport: Fixed PlatformRequestClose (e.g. ALT-F4) being redrected to the first window of the docking node instead of the selected one. 79c075c
@omar omar Viewport: Misc tweaks. 1127804
Commits on 2018-09-21
@omar omar Docking: Fixed losing tab bar selection when extracting a whole docked node + reusing existing dock node when possible. 67be485
@omar omar Merge branch 'viewport' into docking fda57f4
@omar omar Docking: Fixed undocking on whole dock node from leaving undesirable empty node in the docking tree. Fixed calls to MarkIniSettingsDirty(). 8406528
@omar omar Nav: Use Platform_SetWindowFocus when CTRL+Tabbing to another viewport. 5eabf44
@omar omar TabBar: Recover if SelectedTabId doesn't exist anymore. 599d5f1
Commits on 2018-09-20
@omar omar Viewport: GLFW: Build fix for pre GLFW 3.2 (#1542) 7abc368
@omar omar Viewport: Enabled viewports by default in more example apps. b57baa5
@omar omar Docking: Renamed ImGuiDockSpaceFlags to ImGuiDockNodeFlags. Clarified in comments/demos that DockSpace creates a Node. Renamed IsExplicitRoot to IsDockSpace. Assert against explicitly calling DockSpace twice in a frame. 3e47978
Commits on 2018-09-19
@omar omar Docking: Added undocking of whole dock node by dragging from the Collapse button. Super useful and works great! e647f89
@omar omar Docking: Fix of title bar flicker during rebuild. Fixed dragging of DockNode always triggering BeginAsDockableDragDropSource() when io.ConfigDockingWithKeyMod is false. 82978fc
@omar omar Docking: Internals renaming LastExplicitSize to SizeRef (invalidate .ini data) + todo 95d49c3
@omar omar Docking: Creating tab bar and adding window into tab bar immediately (not sure why I didn't do that before). Probably broke something subtle, will find out. *Edit* Initially broke restoring selected tab. 455dc6e
@omar omar Docking: work to allow programmatic control of dock nodes, various refactor + assert fix. Probably broke something (but I haven't found what yet!) 291bfe6
Commits on 2018-09-17
@omar omar Docking: Internals: Transitioning some code toward consistently using ImGuiContext* ctx parameter instead of ImGuiDockContext 35032d4
@omar omar Docking: Fixed central docking display with ImGuiDockSpaceFlags_NoSplit, affecting in particular with io.ConfigDockingWithKeyMod = false. + comments, asserts 28094b7
Commits on 2018-09-14
@omar omar Fixed bad merge (a82be53) where we lost the version number in Docking branch + moved Docking related API together for now. b55b9ae
@omar omar Docking: Changed DockSpace() signature to take an ID, as ID will frequently be used by other API it makes more sense to let the user compute it. 0f1c21a
@omar omar Docking: Removed SplitRatio from ImGuiDockNode and ImGuiDockNodeSettings, which we don't need anymore. 175bab4
@omar omar Docking: Misc rework/rename toward being able to rebuild a branch selectively, so we can honor settings changes on a per Dockspace basis. + Comments ba7b687
@omar omar Merge branch 'viewport' into docking e32256b
@omar omar Viewport: Increased threshold for setting ImGuiViewportFlags_NoFocusOnAppearing. (#1542), 2 doesn't seem enough with some docking setup. 132d8c5
@omar omar Merge branch 'master' into viewport b85f345
Commits on 2018-09-13
@omar omar Viewport: Fix an issue introduced on ~August 16, which would assert when viewport are disabled. Also made the DestroyPlatformWindow process more sturdy. (#1542) 85a3fb3
@omar omar Docking: Fixed floating->docking transition on a platform window mistakenly destroying the platform window because the upcoming tab isn't visible and triggers viewport GC. Fixed missing title bar data on recreate window. 6d91055
@omar omar Docking: Better handling of window losing its dock node or having its dock node not active. 136fc56
@omar omar Docking: Flicker fix when clicking on a Tab leading of a new window, in particular would be noticeable when using nested tab bars. c355ed1
Commits on 2018-09-11
@omar omar Docking: Internal renaming and comments. + Fixed DockNodeMoveChildNodes() to transfer the LastExplicitSize value (was inconsequential afaik). 1cefc48
@omar omar Docking: Added ImGuiDockSpaceFlags_KeepAliveOnly, important for multiple level of tabs. (also renamed ImGuiDockFlags to ImGuiDockSpaceFlags.) 211a9c8
@omar omar Nav: Added a way for code to cancel Alt for menu toggle (ImGuiNavInput_KeyMenu_). Cancelling out on platform window. close request. (#1542, #787) f29b3b4
@omar omar Merge branch 'master' into viewport df65d4a
Commits on 2018-09-10
@omar omar Nav: Added a way for code to cancel Alt for menu toggle (ImGuiNavInput_KeyMenu_). Cancelling out on platform window. close request. (#1542, #787) c4e26f4
@omar omar Docking: Added Type enum in ImGuiDockRequest. Renamed fields. DockSpace() skips node update if already submitted (when transitioning from implicit -> explicit DockSpace). 4169184
@omar omar Nav, Focus: Fixed ImGuiWindowFlags_NoBringToFrontOnFocus windows not being restoring focus properly after the main menu bar or last focused window is deactivated. d5692bf
@omar omar Docking: Updating LastFrameActive earlier in Begin() because BeginDocked() will need to use it. Extracted some code into a DockNodeIsDropAllowedOne() function. Comments. dcef0c0
@omar omar Docking: Added SetNextWindowUserType() + user type filtering in dockspace and window merging. Added DockSpace() flag ImGuiDockFlags_NoSplit. Renaming. Reworked the DockNodeUpdateFindOnlyNodeWithWindows code so DockNodeUpdate can access the first window. a68c98b
@omar omar Docking: io.ConfigResizeWindowsFromEdges default to true in Docking branch. Moved code in BeginTabItem(). b872aa5
Commits on 2018-09-06
@omar omar Merge branch 'docking2' into viewport_docking a82be53
@omar omar Examples: Enabled Docking + Nav by default in the branch. (#351) 49533bc
@omar omar Docking: Added Docking system. (Part 3) (#351) e381f22
@omar omar Docking: Added Docking system. (Part 2) (#351) 9ac1e93
@omar omar Docking: Added Docking system. Enable with io.ConfigFlags |= ImGuiConfigFlags_DockingEnable. (Part 1) (#351) bd5b38e
@omar omar Docking: Added empty skeleton/sections to facilitate diff/patch of incoming code (otherwise git gives us a messier patch). 5adcb9c
@omar omar Docking: Added ImVec2[] non const operator. Added ImStrSkipBlank. Reseting some values earlier in Begin. Added IMGUI_DEBUG_LOG() helper. Added docking source code section. 2ec135c
@omar omar Tabs: Added BeginTabBar(), EndTabBar(), BeginTabItem(), EndTabItem() + demo. (#261, #351) 58d46e1
@omar omar Internals: Added ImPool helper structure. Moved ImVec1f. c039a77
@omar omar Added ImGuiWindowFlags_UnsavedDocument flags. 741bdf1
@omar omar Internals: Windows hidden with HiddenFramesRegular (but NOT HiddenFramesForResize) preserve their SizeContents, so restoring a auto-resize window after it's been hidden by tabs won't reset its size for a frame. Arguable. Let's see how it goes. (Followup to b48e295bddbf965d7382ec5578ed05d2fe601114) 5070c76
@omar omar Internals: Split RenderTextClipped into two functions. 52e0de8
@omar omar Merge branch 'master' into viewport b974fff
@omar omar Merge branch 'master' into viewport a2616c7
Commits on 2018-09-05
@omar omar Merge branch 'master' into viewport 31b5b18
@omar omar Viewport: Making the code a little more sturdy (flag changes) + added descriptions. (#1542) 8601c39
@omar omar Merge branch 'master' into viewport + added viewport ConfigFlags/BackendFlags af27ec2
@omar omar Minor inconsequential merges from Master/Docking branches a848807
@omar omar Merge branch 'master' into viewport bdb30d7
@omar omar Viewport: Moved code following refactor. (#2036, #1542) 897e5c6
Commits on 2018-09-03
@omar omar Misc: merge minor/inconsequential stuff from Docking branch to reduce drift. 1007873
Commits on 2018-08-31
@omar omar Merge branch 'master' into viewport fd201a9
@omar omar Merge branch 'master' into viewport a52ce7a
@omar omar Refactor: Internals: Moved Viewport functions in imgui.cpp in their own section. (part 3) (#2036, #1542) fd90afe
@omar omar Refactor: Internals: Moved Viewport functions in imgui.cpp in their own section. (part 2) (#2036, #1542) 5207afa
@omar omar Merge branch 'viewport_164' into viewport 0699310
@omar omar Merge branch 'master_164' into viewport_164 0c24fe2
Commits on 2018-08-30
@omar omar Refactor: Internals: Moved Tooltip functions in imgui.cpp in their own section + comments. (#2036) c833912
@omar omar Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 3) (#2036) 00262d5
@omar omar Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 2) (#2036) d7c04cc
@omar omar Refactor: Internals: Moved Popup functions in imgui.cpp in their own section. (part 1) (#2036) b1f263b
@omar omar Refactor: Moved Scrollbar function from imgui.cpp to imgui_widgets.cpp, added file index (#2036) a58e4df
@omar omar Merge branch 'master_164' into viewport_164 18d6490
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section. DONE! (part 9) (#2036, #787) 346f83e
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section. (part 8) (#2036, #787) fefcc77
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section. (part 7) (#2036, #787) b6cdfef
@omar omar Refactor: Internals: Restored new lines in NavUpdate() ... (part 6) (#2036, #787) 172e426
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section (moved NavUpdate which would not diff properly unless empty lines were removed, hence the previous patch). (part 5) (#2036, #787) f74d9ec
@omar omar Refactor: Internals: Removing new lines from NavUpdate solely because I couldn't find another way to get a neat diff/patch when moving it. (part 4) (#2036, #787) 9093166
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section (extracted some code out of NavUpdate()). (part 3) (#2036, #787) f5ed547
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section. (part 2) (#2036, #787) 9a4234e
@omar omar Refactor: Internals: Moved Navigation functions in imgui.cpp in their own section. (part 1) (#2036, #787) af002dc
@omar omar Refactor: Internals: Moved Logging functions in imgui.cpp in their own section. (#2036) adeb993
@omar omar Refactor: Internals: Moved Settings functions in imgui.cpp in their own section. (#2036) 81bc426
@omar omar Refactor: Internals: Moved various functions in imgui.cpp (#2036) a44c5f7
@omar omar Refactor: Moved README, ChangeLog, TODO files to docs/ folder + update Changelog. (#2036) 66b5194
@omar omar Merge commit '2714f8fa23d8ca44e98272baf885d12b5185d084' into viewport_164 d4e49a2
@omar omar Refactor: Moved Slider/Drag/Input functions + support DataType stuff from imgui.cpp to imgui_widgets.cpp (#2036) 5214054
@omar omar Refactor: Moved InputText functions from imgui.cpp to imgui_widgets.cpp (#2036) 24dfa0c
@omar omar Refactor: Moved ColorEdit/ColorPicker/ColorButton/etc. functions from imgui.cpp to imgui_widgets.cpp (#2036) 158a65c
@omar omar Refactor: Moved Tree/Selectable functions from imgui.cpp to imgui_widgets.cpp (#2036) 6caf074
@omar omar Refactor: Moved Plot/Value functions from imgui.cpp to imgui_widgets.cpp (#2036) 905e14f
@omar omar Refactor: Moved Menu functions from imgui.cpp to imgui_widgets.cpp (#2036) 4be79a8
@omar omar Refactor: Moved Combo/ListBox functions from imgui.cpp to imgui_widgets.cpp (#2036) 2d95250
@omar omar Refactor: Moved Button/Image/Checkbox/RadioButton/Bullet/ProgressBar functions from imgui.cpp to imgui_widgets.cpp (#2036) 43219d3
@omar omar Refactor: Moved Text functions from imgui.cpp to imgui_widgets.cpp (#2036) 99b2748
@omar omar Refactor: Added imgui_widgets.cpp headers to easily merge in the functions in all our branches. (#2036) 18972c5
@omar omar Refactor: Added empty imgui_widgets.cpp + updated project files / makefiles etc. accordingly (#2036) e312363
@omar omar Version 1.64 WIP 6c34bff
Commits on 2018-08-29
@omar omar Merge branch 'master' into viewport 36b2f64
Commits on 2018-08-25
@omar omar Examples: Vulkan: Viewport: Tweak to improve framerate on multiple-viewport situations, tho it is still halving the unthrottled framerate on nvidia for some reason.. Followup to 4dea032 (#1542) 705ff49
@omar omar Merge branch 'master' into viewport f81caac
@omar omar Examples: Viewport: Disabling swap intervals / vsync on secondary context to match what the DX11 bindings is doing. (#1542) 0ada716
Commits on 2018-08-24
@omar omar Viewport: Fixed warnings due to bad merge. e9c8498
Commits on 2018-08-22
@omar omar Merge branch 'master' into viewport a419185
Commits on 2018-08-17
@omar omar Merge branch 'master' into viewport 9d74807
Commits on 2018-08-15
@omar omar Viewport: DestroyPlatformWindows() checks for the bool CreatedPlatformWindow flag correctly. Note that we set CreatedPlatformWindow=true for the main viewport to allow the back-end to store data in the public Viewport structure (for consistency). (#1542) 5d630c9
Commits on 2018-08-14
@omar omar Viewport: Initial viewport DpiScale only queried on viewport creation. Because AddUpdateViewport() is called repeatedly on MovingWindow or with ImGuiConfigFlags_ViewportsNoMerge, the DpiScale update would break ImGuiConfigFlags_DpiEnableScaleViewports. (#1542) 9852649
@omar omar Viewport: ImGuiWindowFlags_NoFocusOnAppearing affects viewport accordingly. (#1542) 1722a31
Commits on 2018-08-13
@omar omar Merge branch 'master' into viewport e5f2295
Commits on 2018-08-01
@omar omar Merge branch 'master' into viewport 8ef0ca9
Commits on 2018-07-31
@omar omar Viewport: Fixed an assert on loss of valid mouse position while dragging a tooltip (would happen often when using debugger breakpoint). Not totally sure about best solution, may not be important. c031ea0
@omar omar Merge branch 'master' into viewport 9824bf1
Commits on 2018-07-26
@omar omar Merge branch 'master' into viewport 0095b7a
@omar omar Merge branch 'master' into viewport 6b4f6cd
@omar omar Nav: Tweaked CTRL+TAB to hide visual noise on fast switch + fading out screen dimming and highlight to make the experience less harsh 1b646a4
Commits on 2018-07-24
@omar omar Internals: Exposed NavScoreItemGetQuadrant() as ImGetDirQuadrantFromDelta() in imgui_internal.h f22024c
@omar omar Added non-const ImVec2 [] operator for consistency (and because some docking code needs it.) 049c515
@omar omar Merge branch 'master' into viewport 352695b
Commits on 2018-07-22
@omar omar Viewport: Fixed a situation when the implicit Debug window can hold on a zombie viewport which platform window is not properly destroyed. (#1542) 7407749
Commits on 2018-07-17
@omar omar Merge branch 'master' into viewport 23b67e6
@omar omar Viewport: Removed the need for the back-end to fill io.MousePosViewport, it seems unnecessary at this point. (#1542) 7b4fbf4
@omar omar Internals: Viewport: Renamed g.MouseRefViewport to g.MouseViewport. (#1542) b8b7497
@omar omar Viewport: when moving window we use the moving window viewport unless drag and dropping. This is to fix e.g. IsItemHovered() + Tooltip pattern that may be active while moving a window. (#1542) defbf1c
@omar omar Viewport: Revert part of 7abf72e, the viewport ownership stealing is problematic. (#1542). Will rework in the context of docking. (+1 squashed commits) + Fixed unused prototype warning (left-over from a merge) 16c6734
Commits on 2018-07-16
@omar omar Merge branch 'master' into viewport ee98a06
Commits on 2018-07-12
@omar omar Merge branch 'master' into viewport b30b828
@omar omar Viewport: Fixed CTRL+TAB windowing list displaying too many dimming layers (fix dd61c48 for viewport branch) d107146
@omar omar Merge branch 'master' into viewport 88df66e
Commits on 2018-07-09
@omar omar Internals: Fixed CalcSizeContents() returning negative value on first run (inconsequential afaik, but fixing for sanity) ce18371
@omar omar Viewport: Made it possible for the moving window to detach and recreate its own Viewport (used by Docking) 9dea27b
@omar omar Internals: HoveredWindowUnderMovingWindow special handling for drag and drop of window without altering the _NoInputs window flag, which worked but messed up the IsWindowHovered() user-facing flags. 140ece0
@omar omar Viewport: Reapply/recover ownership of viewport which is convenient for docking but also can recover from faulty .ini files. (#1542) 7abf72e
@omar omar Internals: Misc/shallow merge from Docking branch. 5741854
@omar omar Nav: Added a CTRL+TAB window list and changed the highlight system accordingly. (#787) dd61c48
@omar omar Merge branch 'master' into viewport 14cef31
Commits on 2018-07-08
@omar omar Merge branch 'master' into viewport 6277781
Commits on 2018-07-02
@omar omar Merge branch 'master' into viewport 770cba0
Commits on 2018-06-26
@omar omar Merge branch 'master' into viewport c38fe6b
Commits on 2018-06-23
@omar omar Fixed merge. d3ee3e7
Commits on 2018-06-22
@omar omar Merge branch 'master' into viewport ce500f8
Commits on 2018-06-15
@omar omar Fixed merge. 9a5f742
@omar omar Viewport: Fix lagging overlay clipping rectangle on viewport owning window (affecting sync of multi-layered docking overlays). This was extremely tricky to find and fix (*). (#1541) (*) Merely assigning viewport->Pos = pos in UpdateMovingWindow() broke a series of thing because the code that assign viewports and viewport flags relied on moving window leaving its own viewport the first time to set the NoInputs flag. 7e6700d
@omar omar Viewport: Comments. Removed misleading test for !window->ViewportOwned in UpdateSelectWindowViewport(). (#1541) c71522a
Commits on 2018-06-14
@omar omar Merge branch 'master' into viewport 70b0bd1
Commits on 2018-06-13
@omar omar Examples: Fixed example vcproj names in Viewport branch. 087ab2a
Commits on 2018-06-12
@omar omar Merge branch 'master' into viewport 24aeca3
Commits on 2018-06-10
@omar omar Merge branch 'master' into viewport 9660657
@omar omar Merge branch 'examples_refactor2' into viewport (#1870) 13a3a2d
Commits on 2018-06-08
@omar omar Merge branch 'master' into viewport ff4f40d
Commits on 2018-06-07
@omar omar Examples: Documentation 24fc7c3
@omar omar Examples: Fixed Makefile, batch files. 06aa9d8
@omar omar Examples, Platform: Removed the call to ImGui::NewFrame() from the platform _NewFrame() function e.g. ImGui_ImplWin32_NewFrame(), ImGui_ImplSDL2_NewFrame(), ImGui_ImplGlfw_NewFrame(), etc. Moved to main.cpp for consistency. (#1542) 8c37451
@omar omar Examples: Added .. folder in include path to remove the awkward #include "../imgui_impl_xxx.h" statements. 77d51eb
Commits on 2018-06-05
@omar omar Merge branch 'master' into viewport 93b032e
Commits on 2018-05-25
@omar omar Merge branch 'master' into viewport 03c8a78
Commits on 2018-05-23
@omar omar Added float GetWindowDpiScale(). (#1542, #1676) 002e513
@omar omar Viewport, Platform: Fixed a crash if the back-end set the PlatformRequestMove/PlatformRequestSize flags while viewports were disabled (it happened in the SDL back-end, and generally we want to tolerate it to make back-end implementation simpler). (#1542) ed84b2a
Commits on 2018-05-19
@omar omar Viewport: Fixed using ImGuiConfigFlags_ViewportsNoMerge always showing the Debug window by testing the Active flag as well. (#1542) 1176460
Commits on 2018-05-17
@omar omar Merge branch 'master' into viewport 01429e7
Commits on 2018-05-16
@omar omar Viewport: Made GetWindowViewport() not flag the window as written to. 4c35e00
@omar omar Viewport: When resizing/moving a window using the host OS/WM we attempt to merge back into host viewport. (#1542) 7f96061
Commits on 2018-05-15
@omar omar Viewport: Added GetWindowViewport() to query the current viewport for the current window. Comments. (#1542) 1cafdb5
Commits on 2018-05-14
@omar omar Merge branch 'master' into viewport b0fb340
Commits on 2018-05-11
@omar omar Merge branch 'master' into viewport 85f3ba8
@omar omar Viewport, Platform: Cleaned up xxx_UpdateMouseCursor() functions to make them more consistent. (#1542) 090eb43
@omar omar Viewport, Platform: Win32: Fixed handling of io.WantSetMousePos + added a bunch of comments. GLFW, SDL2: Added handling of io.WantSetMousePos. (#1542) d574604
Commits on 2018-05-10
@omar omar Viewport: Changed Monitor field to use Pos+Size (more consistent), changed FullMin,FullMax to MainPos,MainSize. Made main viewport accessible in PlatformIO on first frame. Fixed casing of ImGuiViewportFlags_TopMost flag. (#1542) 6eacddb
Commits on 2018-05-07
@omar omar Merge branch 'master' into viewport 4ff23d3
@omar omar Viewports: Comments on ImGuiConfigFlags_DpiEnableScaleViewports and ImGuiConfigFlags_DpiEnableScaleFonts. (#1542) c7687fc
Commits on 2018-04-27
@omar omar Viewport: Exposing SetNextWindowViewport(). Used in demo and old/obsolete SetNextWindowPosCenter() (which is an interesting case). Fixed back-end likely crash calling GetFocus() after viewport destruction. Fixed metrics crash. c47d34c
Commits on 2018-04-26
@omar omar Viewport, Platform: Refresh monitor list (win32, glfw) + avoid calling GetWindowFocus before platform window creation to not require of backend to null-check things inconsistently. (#1542) cd51f37
@omar omar Viewport: Removed unnecessary fields (now that the coordinate system is consistent accross viewports): MouseRefPrevViewport, MouseClickedPosViewportId. (#1542) da70c83
@omar omar Viewport, Platform: Using Platform_GetWindowFocus to provide a much stronger heuristic of platform z-order, in replacement for when the back-end cannot provide io.MouseHoveredViewport. The pressure for it to work well increased with the use of viewports by popups/menus. (#1542) f1ae07e
Commits on 2018-04-25
@omar omar Viewport: Moved ScaleWindow* code in a proper location. Various comments. d9cd494
@omar omar Misc: tweaks + minor changes merged from master to reduce branch drift. Removed code that ended up unused. 5979233
@omar omar Merge branch 'master' into viewport 0b1d6a0
@omar omar Viewport: Avoid creating viewport on drag (fix cc882b07239b28b1dab6d46af72d3a463c92254a) 7b43360
@omar omar Merge branch 'master' into viewport 3b9b195
@omar omar Platform: Added platform_io.Platform_SetWindowFocus, Platform_GetWindowFocus function wrappers (unused yet). Exact specs tbd because our simplified concept of focus doesn't necessary match the more complex OS native concepts. (#1542) 7a41e0b
@omar omar Viewport: Tidying up AddUpdateViewport() calls. Moved flags argument. Removed extraneous mid-frame call to FindPlatformMonitorFromRect(). (#1542) cc882b0
@omar omar Viewport: Fixed glitches with newly appearing menus creating viewport while the underlying imgui window should be hidden. (#1542) 6d6580f
@omar omar Viewport: Fixed issues with popups drifting in particular when reference mouse position become invalid (e.g. changing app focus while viewported-menu is open). Storing monitor index in viewport at beginning of the frame. (#1542) 7684f53
Commits on 2018-04-24
@omar omar Viewport: Fixed mouse hover flicker on mouse button release frame after moving a window. (#1542) Platform: Clarifying some comments in back-ends. e3e4b7b
@omar omar Removed presumably obsolete MovingWindow tests which prevent move/merge logic in viewport branch from working in all situations (e.g. docking away when ActiveId is the ID of a tab) 679f488
@omar omar Viewport, Platform: Fixed IME positioning for multi-viewport. Moved API from ImGuiIO to ImGuiPlatformIO. Because it is extremely unlikely to people redefined this API manually the moving-forward-breakage is ok. (#1542) SDL2 ime support under Win32 never worked properly because of SDL interferences. cb78e62
Commits on 2018-04-23
@omar omar Viewport: Clamp windows within monitors + fallback rescue window when it is out of sight (e.g. removed monitor, changed resolution) + Win32: declare primary monitor at the beginning of the list. (#1542) 376f2ae
@omar omar Viewports: Todos, Tooltips/menus not automatically forced into their own viewport when the NoMerge flag is set (however the multiplication of viewports makes them more likely to protude and create their own). Win32: try to make primary monitor the first tin the list. (#1542) 0107572
@omar omar Viewport: Added ImGuiConfigFlags_ViewportsNoMerge flag (to enforce a platform window for all floating windows) + minor tidying up and addition of non-functional wip code. d268471
@omar omar Viewport, Platforms: SDL: Fixed initial focus click being ignored as a mouse button. GLFW: Fixed mouse cursor support for multi-viewport with GLFW 3.3 (current master) - somehow doesn't appear to work with GLFW 3.2 but I'm not too fussed about it. (#1542) 423577e
@omar omar Viewport: Fixed initial popup positioning not using the monitor area properly. (#1542) f1c31eb
@omar omar Viewport, Platform: Added work area in ImGuiPlatformMonitor. Renamed fields. (#1542) 4433ce4
Commits on 2018-04-20
@omar omar Viewport: Switched to using unified platform-absolute mouse coordinates, which simplify lots of problems and simplify/reduce tricky conversions, makes ImVec2 less ambiguous. Fixed various viewport/windowing/popups/synchronization bugs. Settings on host-viewport are stored as relative (made settings decently compatible between viewport enable/disabled settings). Merged ImGuiViewport::Pos and ::PlatformPos. Tweaked thumbnails. Better, smaller code. (#1542) 456bbff
Commits on 2018-04-19
@omar omar Viewporrt. Examples: DirectX10,11: Make the platform SetWindowSize handler not crash on failure to resize, which could happen (rarely) on invalid data or bug in the code. 17a7f35
@omar omar Viewport: WIP for Tooltips, Popups, Menus to create their own viewport. Resizing a window allows it to leave the main viewport. (#1542) 637d9c4
Commits on 2018-04-18
@omar omar Merge branch 'master' into viewport 1c385c2
Commits on 2018-04-17
@omar omar Viewport: Fixed manual mouse resize to handle mouse viewport change, which will allow resizing a window while it changes viewport. Releasing manual resize may merge a window. Added ConvertViewportPosToViewportPos() helper. Renamed NewFrameUpdateMovingWindowDropViewport() to UpdateTryMergeWindowIntoHostViewport() and removed the now-unnecessary half of the function. + renaming (#1542) 25f25d5
@omar omar Viewport: Tweaked selection of g.MouseRefViewport, in particular aimed at fixing browsing child-menus while holding mouse buttons with menus in multiple viewports. (#1542) 6ac5063
@omar omar Viewport: Comments, tweaks, renaming. Removed unnecessary stuff. Fixed zealous Clang warning. (#1542) 50e453a
Commits on 2018-04-16
@omar omar Viewport: Render: Fix draw list build code to allow child windows to be in a different viewports (which will happen with e.g. extruding menus). (#1542) 4649bf0
@omar omar Viewport: Shuffled code in Begin to reset size of reappearing popups prior to selecting viewport, to avoid mistakenly using an old size. Moved code out of UpdateSelectWindowViewport() to the section of Begin where positions is being locked down, to avoid code in-between duplicating this. (#1542) 2bd0ee2
@omar omar Viewport: Moved ImGuiWindowFlags_FullViewport to an internal ViewportOwned flag. Renamed AddViewport to AddUpdateViewport. (#Viewport: Shuffled code in Begin to reset size of reappearing popups prior to selecting viewport, to avoid mistakenly using an old size. Moved code out of UpdateSelectWindowViewport() to the section of Begin where positions is being locked down, to avoid code in-between duplicating this. (#1542)) 0d16492
@omar omar Viewport: Remove old code that never worked (testing wrong flag type, always false) + shuffled a few things in Begin() to clarify dependencies. Fixed viewport change on Begin/Begin/End/End patterns. (#1542) 2ae1980
Commits on 2018-04-13
@omar omar Viewport, Platform, DPI: Back-end store per-monitor DPI information in ImGuiPlatformMonitor. (#1542, #1676) 950539b
@omar omar Viewport: Fix to allow changing/animated window name to be reflected in the OS e.g. task bar, so named documents can appear properly. (#1542) f270d6c
@omar omar Viewport: Fixed DPI changing viewport from interfering with moving another window (disabling code) + metrics crash fix on closed viewport window + Windows 10 call to SetThreadDpiAwarenessContext(DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2) for DPI, with no noticeable improvements. (#1542, #1676) 22d6f00
Commits on 2018-04-12
@omar omar Viewport: Virtual mouse position are patched immediately when viewports are moved in the virtual space, avoiding interaction glitchs on a resizing frame. (#1542) 38e357e
@omar omar Viewport: Debug/metrics tweaks + renaming comments 0b7f3ed
Commits on 2018-04-11
@omar omar Viewport, Platform: Added ImGuiViewportFlags_TopMost that will be used by tooltip window (without it, clicking and holding the window emitting the tooltip would move the tooltip to the back) + GLFW backend fixes for non-win32 platforms. (#1542) 285269e
@omar omar Merge branch 'master' into viewport e25da42
@omar omar Viewport: per-viewport overlay draw list created on demand. With this pattern it'll be easier to consider adding more (e.g. background draw list). (#545) 8be6f40
Commits on 2018-04-10
@omar omar Viewport: Merged ImGuiPlatformData into ImGuiPlatformIO. Comments. (#1542) 83bd359
@omar omar Viewport, Platform: Added a way to register monitor bounds to imgui so they can be used to clamp individual-viewport tooltips/popups so they don't straddle monitors. (#1542) 32ee0a3
@omar omar Viewports, DPI: Renamed config flags. (#1542) 7ddc22b
@omar omar Viewport: Popups, Tooltips can individually request no task bar icons to the platform layer. (#1542) 0d5042f
@omar omar Viewport: shuffled some code in the UpdateSelectWindowViewport() function. 0eaddb4
Commits on 2018-04-09
@omar omar Viewport: Merge fix conflicting flags. 74a11e2
@omar omar Examples, Platform, Viewport: Fixed inconsistent window ownership issues. Added comments. Made Win32/SDL back-ends track ownership. d4dd448
@omar omar Merge branch 'master' into viewport 56ad2a2
Commits on 2018-04-06
@omar omar Merge branch 'master' into viewport f421e73
Commits on 2018-04-05
@omar omar Viewport, Platform, Examples: Added support for transparent window via PlatformIO Platform_SetWindowAlpha (#1542) + fixes for GLFW 3.3 7289931
@omar omar Viewport: Comments about honoring ImGuiViewportFlags_NoInputs and MouseHoveredViewport. (#1542) 84c6ea0
@omar omar Viewport: Moving a window accross viewports tries to preserve the dragging pivot (that is assuming that the window will be evenly scaled by DPI, aka Style is scaled). (#1542) c23b546
@omar omar Viewport: Renamed RenderPlatformWindows() to RenderPlatformWindowsDefault(), tweaked examples and emphasis optional Viewport code path. (#1542) 9d8bc79
Commits on 2018-04-04
@omar omar Merge branch 'master' into viewport 0cad274
Commits on 2018-03-22
@omar omar Viewport: Moved OverlayDrawList to be a per-viewport instead of being global + fix overlay clipping glitch during viewport creation frame + support for software mouse cursor stradding over multiple viewport. The overlay draw list move is rather important as draw lists are not shared among viewports anymore and we can do a swap of their data without copying it. (#1542) ac8931b
@omar omar Viewport: Avoid modifying MousePos in UpdateWindowViewport just for the sake of docking test, sheering MousePos during the frame is problematic + minor renaming. (#1542) 4f112f8
Commits on 2018-03-21
@omar omar Nav: Fixed a crash with IMGUI_DEBUG_NAV_SCORING enabled + added info to Metrics. e5ba982
Commits on 2018-03-20
@omar omar Examples: GLFW: Don't alter cursor mode if GLFW_CURSOR input mode is GLFW_CURSOR_DISABLED. (#1202) [@PhilCK] 200754b
@omar omar Examples: OpenGL2: Added multi-viewport support in the OpenGL2 back-end. (#1542) + Metrics: Fix undisplayed flag. 42ad3c1
@omar omar Merge branch 'master' into viewport 172570a
@omar omar Merge branch 'master' into viewport c29971c
Commits on 2018-03-19
@omar omar Viewport: Changelog + Internals: Renamed viewport mouse fields for consistency (going to add more). (#1542) ccc9a22
@omar omar Viewport: Added extra Metrics and debug features. c00523d
@omar omar Viewport, Platform: Update the contents of GetPlatformData() in EndFrame() so back-end can access it even if UpdatePlatformWindows hasn't been called. (#1542) 9d5ec05
@omar omar Viewport, Platform: Added void* to render/swap buffer functions. Comments. (#1542, #1042) 2fecd33
Commits on 2018-03-18
@omar omar Viewport, Examples: Renamed types used by examples. (#1542) 0e09032
@omar omar Viewport, Platform: Refactored platform interface. Removed need to use imgui_internal.h in backends. Split viewport into public facing ImGuiViewport and internal structure. Exposing enough data to provide custom tweaked renderers. Renamed handlers, fixed lots of inconsistencies. (#1542, #1042) 46b6142
@omar omar Merge branch 'master' into viewport bcf4ed2
Commits on 2018-03-17
@omar omar Merge branch 'master' into viewport 6cfc9e6
Commits on 2018-03-15
@omar omar Viewport, Platform: Internal renaming to use more consistent (OsDesktopPos > PlatformPos). (#1542) 1ab236d
@omar omar Viewport, Platform: SDL: Makes the CreateViewport function restore current GL context so in theory it is free from side-effect. That said, it seems like there is a bug in SDL because our CreateViewport (currently in Render(), not for long) have affect a jerky side-effect if SDL_GL_MakeCurrent() is called before Render(). (#1542) 2e1ac0f
@omar omar Viewport: Removed back-end renderer code that implied we need to clear with WindowBg color. Added NoRendererClear flag. (#1542, #1042) 8364d1c
@omar omar Examples Refactor: GLFW: Explicit functions to init GLFW with OpenGL or Vulkan since we cannot read the api hints from glfw. 09d8943
@omar omar Viewport, Platform, Examples: Changes to resizing flow + restored support for Platform events affecting the ImGui windows (so Decorated windows are functional). (#1542, #1042) .. SDL: Added platform move/resize/close support. GLFW: Added platform move/resize support. Moved Close to use callback for consistency. Win32: Vulkan: Fixed resize support. Naming is WIP "PlatforrmRequestXXX" is too ambiguous. Basically we either have a ImGui->Platform flow or a Platform->ImGui flow. Working a bigger refactor now. 6e58a95
Commits on 2018-03-14
@omar omar Metrics: Displaying all draw lists of a window (if it uses layer 0 and has already been appended to earlier in the frame). 207ad45
@omar omar Examples: SDL: Fix for versions olders than 2.0.6 83ef61f
Commits on 2018-03-13
@omar omar Examples: SDL,GLFW,Vulkan: The Platform<>Renderer link is handled by SDL/GLFW platforms, both can compile without Vulkan headers, SDL+Vulkan is now on part with GLFW+Vulkan (aka broken the same way!). (#1542) d0e0b10
@omar omar Examples: Using draw_data->DisplaySize, followup to c50198debe4978853f3f8ed6e84a7b2685991c06. Fix Vulkan secondary viewport rendering. SDL+Vulkan: Matched changes. Fix vcprojs. (#1542, #1042) 98b66a5
@omar omar Viewport: Fixed software mouse cursor from appearing in all multiple lists simultaneously. (#1542) 921bb92
@omar omar Viewport: Obsoleted io.DisplayPos (which was a Viewport branch thing), added ImDrawData::DisplayPos, DisplaySize (#1542) wip c50198d
@omar omar Viewport: Removed unnecessary function hoop. 6371474
@omar omar Merge branch 'master' into viewport 8657201
Commits on 2018-03-12
@omar omar Examples, Viewport: Vulkan: Experiment (broken) multi-viewport support, merging code from ParticlePeter branches. (#1542, #1042) b884927
@omar omar Merge branch 'master' into viewport (inc Vulkan resize fix merge #1042) f6fc28d
@omar omar Examples: Vulkan: Passing Queue, QueueFamily to binding. Fixed scissor (fixed in master). ImGui_ImplVulkanH_DestroyWindowData() waits for device to be idle. (#1042) cdeef65
@omar omar Examples: DPI: Minor warning fix. (#1676) 1e81a53
@omar omar Viewport, DPI: Some early work on per-viewport DPI support. At the moment the easiest way is to replace fonts during the ChangedViewport callback, but down the line we should aim at handling some of it at ImFont level. (#1542, #1676) 5e63711
@omar omar Examples: DPI: Portable DPI related helpers in the _Win32 examples. Using one in examples's main.cpp, the GetDpiScale functions are not wired anywhere for now. (#1542, #1676) a2fbcc9
@omar omar Viewport: Fix dropping back viewport not being moved to the front of the window list. (Now that viewport are more tighly coupled to a single root window) (#1542) 10030ff
@omar omar Viewport, DPI: Don't activate current window until a viewport has been selected. At this point we'll have the proper size/scale for the current DPI + fix viewport callback when appending to an existing window more than once a frame. (#1542, #1676) 648735a
@omar omar Viewport, DPI: Select viewport before locking style sizes and before handling double-click-on-title-bar to collapse. (#1542, #1676) a4629b0
Commits on 2018-03-09
@omar omar Merge branch 'master' into viewport 64cbbed
@omar omar Viewport,Platform: Added GetWindowDpiScale() platform interface, changes of scale are reflected by positioning and resizing windows in their given viewport. (#1542) 43f375b
Commits on 2018-03-08
@omar omar Viewport: Changed signature of ResizeViewport to be consistent with other similar functions. 1eb89d7
@omar omar Viewport: Coupling non-main viewport to one window. Viewport name derived from the window. Added ImGuiConfigFlags_PlatformNoTaskBar, off by default (aka re-established task-bars by default for now). (#1542) 4d46383
@omar omar Examples: DPI: Hacked in a quick compile-and-run-everywhere call to SetProcessDpiAwareness(), will need to revisit. aa3fe81
Commits on 2018-03-07
@omar omar Viewport: Disable extra viewports from hosting other windows. (#1542) 9ea16e3
@omar omar Fixed warnings. d8719cf
@omar omar Viewport: Reorganized viewport enable flags. Both user + platform + renderer need to enable a flag. (#1542) 9dcc074
@omar omar Examples: SDL: Fix for pre 2.0.4. 52c7882
@omar omar Examples: Updated Makefile and batch files to work with new examples. Using lowercase "gl.h" as it seems this is what Linux wants. 19b9275
@omar omar Examples: Added Makefile for SDL+OpenGL2 example. (#1668) f318f2d
@omar omar Viewport: Modal display their darkneing/whitening layer over all viewports. (#1542) 21ff039
@omar omar Viewport: Various sanity fixes. Popup always inherit viewport from their parent for now. (#1542) 25fd9d6
Commits on 2018-03-06
@omar omar Merge branch 'master' into viewport 3637193
Commits on 2018-03-05
@omar omar Viewport: Tracking current viewport we are appending to + added callback in PlatformInterface for DPI purpose (WIP). (#1542) 8e3274e
Commits on 2018-03-03
@omar omar Merge branch 'master' into viewport c4a1586
@omar omar Viewport: Give a chance to platform and renderer to actually destroy their data. Otherwise the regular ImplXXX_Shutdown + following by DestroyContext() order fails to fullifl this. (#1542) e026c8d
@omar omar Examples: Vulkan: Further refactor. cab41d9
Commits on 2018-03-02
@omar omar Examples: Vulkan: Moved CreateOrResizeWindowData func to imgui_impl_vulkan.h e0cbfd7
@omar omar Examples: Vulkan: Moved main.cpp data structures to imgui_impl_vulkan.h as shared helpers for the benefit of both the example and the platform/viewport renderer interface. 426930e
@omar omar Viewport: Replaced UpdatePlatformWindows/RenderPlatformWindows by RenderAdditionalViewports(). The update is always called in EndFrame(). (#1542) e9fa17e
@omar omar Viewport: When enabled we assert against using RenderDrawListFn to make user more aware of rendering order. (#1542) b807347
@omar omar Examples: Vulkan: Moved variables into per-window data, refactored/tweaks to that the bug functions main.cpp for both SDL and GLFW examples match (they'll probably be moved to imgui_impl_vulkan as helpers). 7113fc7
@omar omar Examples: Vulkan: Fix 7b968b098eeb1e162504d42183ca6618568e859c e0f283c
@omar omar Examples: Vulkan: Reduced duplicate code by skipping present on the first frame. Amend 201d589714c6ef7ff40c87140818a2208b8686b7 by @ParticlePeter 7b968b0
@omar omar Examples: Vulkan: Various tweak. Misc refactor into per-frame data. Duplicate buffer creation code moved to CreateOrResizeBuffer(). e927a6a
@omar omar Examples: GLFW, Vulkan: GLFW binding viewport tweaks to supports Vulkan better (do not call SwapBuffer, share context etc.). Added DUMMY (empty) platform/viewport interface in the viewport code. 9da475e
@omar omar Examples: Renamed glfw error callback so it's more clear what it is. 5b282bd
Commits on 2018-03-01
@omar omar Merge branch 'examples_refactor' into viewport fc80f2b
@omar omar Examples: Vulkan: SDL: Fixed missing resize handler (not properly merged from #1367) + tweaks. 68e9ef9
@omar omar Examples: Vulkan: Moved code into shared helpers: ImGui_ImplVulkan_SelectSurfaceFormat, ImGui_ImplVulkan_SelectPresentMode. 296db2e
@omar omar Examples: Vulkan: Various tweaks to name variable more consistently like Vulkan + a few comments + a few imgui style code compaction. 3171d61
@omar omar Viewport: Always be lenient with invalid mouse position during dragging, since they are provided by back-end and technically acceptable inputs + comments. (#1542) 00b9e70
@omar omar Examples: Vulkan: Debug report tweak + always enable in Debug build. 57e9f61
@omar omar Examples: Fixed enabling IMGUI_VULKAN_DEBUG_REPORT which was broken during refactor because of duplicate 'extensions' local variable. cf365ed
Commits on 2018-02-28
@omar omar Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. (#787) d98a5d5
@omar omar Renamed ImGuiNavFlags io.NavFlags to ImGuiConfigFlags io.ConfigFlags. (#787) 8074d56
@omar omar Examples: DX10: Multi viewport/platform support (based on DX11 version). (#1542) fc3c3de
Commits on 2018-02-27
@omar omar Examples: NULL pointers for consistency. 997d1bd
@omar omar Examples: DX12: Empty skeleton toward implementing the multi-viewport api for DirectX12. (WIP/test API) (#1542, #301) baef794
@omar omar Examples: SDL: Initial attempt at implementing the viewport/platform api. (WIP/test API) (#1542) ImGui_ImplSDL2_Init() now takes a SDL GL context. cb601d7
@omar omar Examples: GLFW + OpenGL3: Initial attempt at implementing the viewport/platform api. (WIP/test API) (#1542) 4cee46f
@omar omar Examples: DX11 + Win32: Initial attempt at implementing the viewport/platform api. (WIP/test API) (#1542) 25349b3
@omar omar Viewport: Initial viewport branch+ platform api commit (squashed from previous commits, still very WIP) (#1542) 735267d
@omar omar Metrics: Added option to show begin order, useful for debugging. b5ced47
@omar omar Internal: Minor renaming. 67319a7
@omar omar Internals: Moving window: test mouse validity while translating window + using SetWindowPos(). 184a6f1
@omar omar Removed DisplayVisibleMin/DisplayVisibleMax facility (as part of # 1542). Misc comments. b32bb4e
@omar omar Clearing next window data at the end of Begin() more reliably. Misc comments. 0e62b7d
@omar omar Internals: Settings: Added ReadCloseFn to allow handlers to sanitize data on a per-entry basis. a761779
@omar omar Examples: Misc tweaks/fixes. 29510fc
Commits on 2018-02-26
@omar omar Merge branch 'master' into examples_refactor 3f335b0
Commits on 2018-02-23
@omar omar Examples: DirectX12: Merged to new example format, imgui_impl_dx12.cpp contains the DX12 stuff, couple with imgui_impl_win32.cpp ffda84c
@omar omar Merge branch 'master' into examples_refactor e6bc840
Commits on 2018-02-21
@omar omar Simplified .gitignore list 0b26387
@omar omar Examples: Titles/comments in headers f7ef10e
@omar omar Merge branch 'master' into examples_refactor 91cadc1
@omar omar Examples: Using SDL2_DIR instead of SDL_DIR (more standard). 47d1360
@omar omar Examples: Added SDL+Vulkan example, the abstraction worked here :) (ref #1367) f676994
@omar omar Examples: Vulkan: Formatting and tweaks (to match SDL's main). 387f724
Commits on 2018-02-20
@omar omar Merge branch 'master' into examples_refactor bcdfd5d
Commits on 2018-02-19
@omar omar Examples: GLFW: Added mouse cursors support (#1495) e660d92
Commits on 2018-02-18
@omar omar Examples: WIn32: Prefixing every Win32 function calls with :: to denote global namespace in a consistent manner. 9fdf72e
@omar omar Examples: Vulkan: Added support for io.DisplayPos. df9051d
@omar omar Examples: Vulkan: Fixed GLFW calls. 230c5ca
@omar omar Examples: DirectX10, DirectX11, OpenGL2, OpenGL3: Added support for io.DisplayPos. 3bd3693
@omar omar Added dummy io.DisplayPos field. 45cbeba
@omar omar Examples: Allegro5, Marmalade: Moved bindings to parent folder. Renamed Allegro stuff from *A5_ to *Allegro5_ 6d0f924
@omar omar Examples: Added SDL, Vulkan examples to .sln file. 80a8aea
@omar omar Examples: DirectX9: Reusing imgui_impl_win32, removed that code from imgui_impl_dx9 4f0db01
@omar omar Examples: DirectX10: Reusing imgui_impl_win32, removed that code from imgui_impl_dx10 6cd4e30
@omar omar Examples: DirectX11: Extracted imgui_impl_dx11.* instead imgui_impl_dx11 and imgui_impl_win32 1954047
@omar omar Examples: Vulkan: Extracted into imgui_impl_vulkan.*, reused imgui_impl_glfw* files. 90dffb5
@omar omar Examples: SDL: Extracted into imgui_impl_sdl.*, reused imgui_impl_opengl* files. ef521d1
@omar omar Examples: OpenGL2, OpenGL3: Added glPixelStorei() calls borrowed from SDL examples. 42c32bf
@omar omar Examples: GLFW+GL2: Moved glfw, gl2 files to root folder, split imgui_impl_glfw_gl2 into _opengl2 and reused imgui_impl_glfw c8a9969
@omar omar Examples: GLFW+GL3: Split imgui_impl_glfw_gl3 into imgui_impl_glfw and imgui_impl_gl3 (wip) b0a8734
@omar omar ImFontAtlas: Added IsBuilt() helper. 8d0723c
Showing 50 changed files
View
docs/CHANGELOG.txt
View
docs/TODO.txt
View
examples/README.txt
View
examples/example_allegro5/main.cpp
View
examples/example_apple_opengl2/main.mm
View
examples/example_emscripten/main.cpp
View
examples/example_glfw_opengl2/main.cpp
View
examples/example_glfw_opengl3/main.cpp
View
examples/example_glfw_vulkan/main.cpp
View
examples/example_glut_opengl2/main.cpp
View
examples/example_marmalade/main.cpp
View
examples/example_sdl_directx11/main.cpp
View
examples/example_sdl_opengl2/main.cpp
View
examples/example_sdl_opengl3/main.cpp
View
examples/example_sdl_vulkan/main.cpp
View
examples/example_win32_directx10/main.cpp
View
examples/example_win32_directx11/main.cpp
View
examples/example_win32_directx12/main.cpp
View
examples/example_win32_directx9/main.cpp
View
examples/imgui_examples.sln
View
examples/imgui_impl_dx10.cpp
View
examples/imgui_impl_dx10.h
View
examples/imgui_impl_dx11.cpp
View
examples/imgui_impl_dx11.h
View
examples/imgui_impl_dx12.cpp
View
examples/imgui_impl_dx12.h
View
examples/imgui_impl_dx9.cpp
View
examples/imgui_impl_dx9.h
View
examples/imgui_impl_glfw.cpp
View
examples/imgui_impl_glfw.h
View
examples/imgui_impl_metal.h
View
examples/imgui_impl_metal.mm
View
examples/imgui_impl_opengl2.cpp
View
examples/imgui_impl_opengl2.h
View
examples/imgui_impl_opengl3.cpp
View
examples/imgui_impl_opengl3.h
View
examples/imgui_impl_osx.h
View
examples/imgui_impl_osx.mm
View
examples/imgui_impl_sdl.cpp
View
examples/imgui_impl_sdl.h
View
examples/imgui_impl_vulkan.cpp
View
examples/imgui_impl_vulkan.h
View
examples/imgui_impl_win32.cpp
View
examples/imgui_impl_win32.h
View
imgui.cpp
View
imgui.h
View
imgui_demo.cpp
View
imgui_draw.cpp
View
imgui_internal.h
View
imgui_widgets.cpp