108 Commits (07e07030a64df02c4f1de5778ab20c6ed020dff5)

Author SHA1 Message Date
omar e1143377c2 Viewport: Added ImGuiViewportFlags_NoFocusOnClick + support in imgui_impl_win32. Made windows with no decoration always set the _NoFocus flags. (#1542, #2117) ago%!(EXTRA string=6 years)
omar 2c38b32db1 Removed trailing spaces (#2038, #2299) ago%!(EXTRA string=6 years)
omar b8020032f9 Examples: Win32: Added support for mouse buttons 4 and 5 via WM_XBUTTON* messages. (#2264) ago%!(EXTRA string=6 years)
omar acdb4823dd Examples: Win32: Fix for older Windows SDK. ago%!(EXTRA string=6 years)
omar 872477548b Examples: Win32: Using IsChild() to be compatible with windows created within a parent. (#1951, #2087, #2156, #2232) ago%!(EXTRA string=6 years)
omar f435aa193b Examples: Win32: Added support for XInput games (if ImGuiConfigFlags_NavEnableGamepad is enabled). ago%!(EXTRA string=6 years)
omar 133f112af0 Examples: Win32: Using GetForegroundWindow() instead of GetActiveWindow() to be compatible with windows created in a different thread. (#1951, #2087, #2156, #2232) [many people] ago%!(EXTRA string=6 years)
omar 0cabe4dedf 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) ago%!(EXTRA string=6 years)
omar cfcad42b89 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) ago%!(EXTRA string=6 years)
omar 4a6f95acc8 Viewport: Added Platform_UpdateWindow hook for general purpose: Rework Win32 code to reflect viewport flags changes into Win32 while the window is active. ago%!(EXTRA string=6 years)
omar a9a60a24c1 Tweaked asserts ago%!(EXTRA string=6 years)
omar 5d20da1b36 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) ago%!(EXTRA string=6 years)
omar f3a0b17bb8 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. ago%!(EXTRA string=6 years)
omar 7658035e5a About, IO: Added io.BackendPlatformName, io.BackendRendererName for informational/QA purpose. ago%!(EXTRA string=7 years)
omar a423f032ee About, IO: Added io.BackendPlatformName, io.BackendRendererName for informational/QA purpose. ago%!(EXTRA string=7 years)
omar d8ab2c1ac9 Viewport: Added support for minimized window which caused problem when ImGuiBackendFlags_HasMouseHoveredViewport was not supported. (#1542) + todo ago%!(EXTRA string=7 years)
omar 9ee86f22b7 Examples: Win32: Handle UTf-8 in platform window title setting. (#2164) ago%!(EXTRA string=7 years)
omar 7c3b9172ad Examples: Referring to missing gamepad support in back-end that are missing it. ago%!(EXTRA string=7 years)
omar 1afd29d382 Examples: Using "dear imgui" terminology in all examples headers/comments + fix minor typo. ago%!(EXTRA string=7 years)
Ryan Crandall 34203d5008 imgui_impl_win32: Don't redefine WIN32_LEAN_AND_MEAN if already defined (#2014) ago%!(EXTRA string=7 years)
omar 7b4fbf4301 Viewport: Removed the need for the back-end to fill io.MousePosViewport, it seems unnecessary at this point. (#1542) ago%!(EXTRA string=7 years)
omar c4e34aaace Examples: Comments to clarify how the keyboard data is indexed. ago%!(EXTRA string=7 years)
omar 62b3d7c51e Fixed software Hand cursor from not actually working. Fixed demo from crashing. Fixed typo and extraneous trailing space. Added Changelogs. (#1913, #1914) ago%!(EXTRA string=7 years)
Aiekick ecd9a223e3 add hand cursor support (+11 squashed commit) ago%!(EXTRA string=7 years)
omar cac4c3f9b8 Examples: The functions in imgui_impl_xxx.cpp are prefixed with IMGUI_IMPL_API (which defaults to IMGUI_API) to facilitate some uses. (#1888) + Comments in imgui.h ago%!(EXTRA string=7 years)
omar c44a4bed84 Examples: Fixed bindings to use ImGuiMouseCursor_COUNT instead of old name ImGuiMouseCursor_Count_ so they can compile with IMGUI_DISABLE_OBSOLETE_FUNCTIONS. (#1887) ago%!(EXTRA string=7 years)
omar bdb3d72d37 Examples: Win32: Fixed handling of mouse wheel messages to support finer position messages (typically sent by track-pads). (#1874) ago%!(EXTRA string=7 years)
omar 7acb46bec5 Examples: Comments to make ImGuiConfigFlags_NoMouseCursorChange more visible (#1027). + Allegro5: Added support for ImGuiConfigFlags_NoMouseCursorChange flag. ago%!(EXTRA string=7 years)
omar 85f9694bd4 Big example binding refactor (manually imported from Viewport branch, stripped out of Viewport code). (#1870) ago%!(EXTRA string=7 years)
omar 8c374512fd 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) ago%!(EXTRA string=7 years)
omar 090eb437ed Viewport, Platform: Cleaned up xxx_UpdateMouseCursor() functions to make them more consistent. (#1542) ago%!(EXTRA string=7 years)
omar d574604a5d Viewport, Platform: Win32: Fixed handling of io.WantSetMousePos + added a bunch of comments. GLFW, SDL2: Added handling of io.WantSetMousePos. (#1542) ago%!(EXTRA string=7 years)
omar 6eacddb50f 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) ago%!(EXTRA string=7 years)
omar cd51f37fc0 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) ago%!(EXTRA string=7 years)
omar da70c837da Viewport: Removed unnecessary fields (now that the coordinate system is consistent accross viewports): MouseRefPrevViewport, MouseClickedPosViewportId. (#1542) ago%!(EXTRA string=7 years)
omar 7a41e0b1ea 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) ago%!(EXTRA string=7 years)
omar e3e4b7bdf5 Viewport: Fixed mouse hover flicker on mouse button release frame after moving a window. (#1542) ago%!(EXTRA string=7 years)
omar cb78e62df9 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) ago%!(EXTRA string=7 years)
omar 376f2aec54 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) ago%!(EXTRA string=7 years)
omar d268471285 Viewport: Added ImGuiConfigFlags_ViewportsNoMerge flag (to enforce a platform window for all floating windows) + minor tidying up and addition of non-functional wip code. ago%!(EXTRA string=7 years)
omar 423577e14e 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) ago%!(EXTRA string=7 years)
omar 4433ce4312 Viewport, Platform: Added work area in ImGuiPlatformMonitor. Renamed fields. (#1542) ago%!(EXTRA string=7 years)
omar 456bbffcc4 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) ago%!(EXTRA string=7 years)
omar 950539b768 Viewport, Platform, DPI: Back-end store per-monitor DPI information in ImGuiPlatformMonitor. (#1542, #1676) ago%!(EXTRA string=7 years)
omar 22d6f00110 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) ago%!(EXTRA string=7 years)
omar 285269ef55 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) ago%!(EXTRA string=7 years)
omar 83bd3595a4 Viewport: Merged ImGuiPlatformData into ImGuiPlatformIO. Comments. (#1542) ago%!(EXTRA string=7 years)
omar 32ee0a3947 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) ago%!(EXTRA string=7 years)
omar 7ddc22b326 Viewports, DPI: Renamed config flags. (#1542) ago%!(EXTRA string=7 years)
omar 0d5042f0f3 Viewport: Popups, Tooltips can individually request no task bar icons to the platform layer. (#1542) ago%!(EXTRA string=7 years)