nostalgia/deps/imgui/docs/FAQ.md

708 lines
45 KiB
Markdown
Raw Normal View History

Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
# FAQ (Frequently Asked Questions)
You may link to this document using short form:
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
https://www.dearimgui.com/faq
or its real address:
https://github.com/ocornut/imgui/blob/master/docs/FAQ.md
or view this file with any Markdown viewer.
## Index
| **Q&A: Basics** |
:---------------------------------------------------------- |
| [Where is the documentation?](#q-where-is-the-documentation) |
| [What is this library called?](#q-what-is-this-library-called) |
| [Which version should I get?](#q-which-version-should-i-get) |
| **Q&A: Integration** |
| **[How to get started?](#q-how-to-get-started)** |
| **[How can I tell whether to dispatch mouse/keyboard to Dear ImGui or my application?](#q-how-can-i-tell-whether-to-dispatch-mousekeyboard-to-dear-imgui-or-my-application)** |
| [How can I enable keyboard or gamepad controls?](#q-how-can-i-enable-keyboard-or-gamepad-controls) |
| [How can I use this on a machine without mouse, keyboard or screen? (input share, remote display)](#q-how-can-i-use-this-on-a-machine-without-mouse-keyboard-or-screen-input-share-remote-display) |
| [I integrated Dear ImGui in my engine and little squares are showing instead of text...](#q-i-integrated-dear-imgui-in-my-engine-and-little-squares-are-showing-instead-of-text) |
| [I integrated Dear ImGui in my engine and some elements are clipping or disappearing when I move windows around...](#q-i-integrated-dear-imgui-in-my-engine-and-some-elements-are-clipping-or-disappearing-when-i-move-windows-around) |
| [I integrated Dear ImGui in my engine and some elements are displaying outside their expected windows boundaries...](#q-i-integrated-dear-imgui-in-my-engine-and-some-elements-are-displaying-outside-their-expected-windows-boundaries) |
| **Q&A: Usage** |
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
| **[About the ID Stack system..<br>Why is my widget not reacting when I click on it?<br>Why is the wrong widget reacting when I click on one?<br>How can I have widgets with an empty label?<br>How can I have multiple widgets with the same label?<br>How can I have multiple windows with the same label?](#q-about-the-id-stack-system)** |
| [How can I display an image? What is ImTextureID, how does it work?](#q-how-can-i-display-an-image-what-is-imtextureid-how-does-it-work)|
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
| [How can I use maths operators with ImVec2?](#q-how-can-i-use-maths-operators-with-imvec2) |
| [How can I use my own maths types instead of ImVec2/ImVec4?](#q-how-can-i-use-my-own-maths-types-instead-of-imvec2imvec4) |
| [How can I interact with standard C++ types (such as std::string and std::vector)?](#q-how-can-i-interact-with-standard-c-types-such-as-stdstring-and-stdvector) |
| [How can I display custom shapes? (using low-level ImDrawList API)](#q-how-can-i-display-custom-shapes-using-low-level-imdrawlist-api) |
| **Q&A: Fonts, Text** |
| [How should I handle DPI in my application?](#q-how-should-i-handle-dpi-in-my-application) |
| [How can I load a different font than the default?](#q-how-can-i-load-a-different-font-than-the-default) |
| [How can I easily use icons in my application?](#q-how-can-i-easily-use-icons-in-my-application) |
| [How can I load multiple fonts?](#q-how-can-i-load-multiple-fonts) |
| [How can I display and input non-Latin characters such as Chinese, Japanese, Korean, Cyrillic?](#q-how-can-i-display-and-input-non-latin-characters-such-as-chinese-japanese-korean-cyrillic) |
| **Q&A: Concerns** |
| [Who uses Dear ImGui?](#q-who-uses-dear-imgui) |
| [Can you create elaborate/serious tools with Dear ImGui?](#q-can-you-create-elaborateserious-tools-with-dear-imgui) |
| [Can you reskin the look of Dear ImGui?](#q-can-you-reskin-the-look-of-dear-imgui) |
| [Why using C++ (as opposed to C)?](#q-why-using-c-as-opposed-to-c) |
| **Q&A: Community** |
| [How can I help?](#q-how-can-i-help) |
# Q&A: Basics
### Q: Where is the documentation?
**This library is poorly documented at the moment and expects the user to be acquainted with C/C++.**
- The [Wiki](https://github.com/ocornut/imgui/wiki) is a hub to many resources and links.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Handy [Getting Started](https://github.com/ocornut/imgui/wiki/Getting-Started) guide to integrate Dear ImGui in an existing application.
- 20+ standalone example applications using e.g. OpenGL/DirectX are provided in the [examples/](https://github.com/ocornut/imgui/blob/master/examples/) folder to explain how to integrate Dear ImGui with your own engine/application. You can run those applications and explore them.
- See demo code in [imgui_demo.cpp](https://github.com/ocornut/imgui/blob/master/imgui_demo.cpp) and particularly the `ImGui::ShowDemoWindow()` function. The demo covers most features of Dear ImGui, so you can read the code and see its output.
- See documentation: [Backends](https://github.com/ocornut/imgui/blob/master/docs/BACKENDS.md), [Examples](https://github.com/ocornut/imgui/blob/master/docs/EXAMPLES.md), [Fonts](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md).
- See documentation and comments at the top of [imgui.cpp](https://github.com/ocornut/imgui/blob/master/imgui.cpp) + general API comments in [imgui.h](https://github.com/ocornut/imgui/blob/master/imgui.h).
- The [Glossary](https://github.com/ocornut/imgui/wiki/Glossary) page may be useful.
- The [Issues](https://github.com/ocornut/imgui/issues) and [Discussions](https://github.com/ocornut/imgui/discussions) sections can be searched for past questions and issues.
- Your programming IDE is your friend, find the type or function declaration to find comments associated with it.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- The `ImGui::ShowMetricsWindow()` function exposes lots of internal information and tools. Although it is primarily designed as a debugging tool, having access to that information tends to help understands concepts.
##### [Return to Index](#index)
---
### Q. What is this library called?
**This library is called Dear ImGui**. Please refer to it as Dear ImGui (not ImGui, not IMGUI).
(The library misleadingly started its life in 2014 as "ImGui" due to the fact that I didn't give it a proper name when I released 1.0, and had no particular expectation that it would take off. However, the term IMGUI (immediate-mode graphical user interface) was coined before and is being used in variety of other situations e.g. Unity uses it own implementation of the IMGUI paradigm. To reduce the ambiguity without affecting existing code bases, I have decided in December 2015 a fully qualified name "Dear ImGui" for this library.
##### [Return to Index](#index)
---
### Q: Which version should I get?
I occasionally tag [Releases](https://github.com/ocornut/imgui/releases) but it is generally safe and recommended to sync to master/latest. The library is fairly stable and regressions tend to be fixed fast when reported.
You may use the [docking](https://github.com/ocornut/imgui/tree/docking) branch which includes:
- [Docking features](https://github.com/ocornut/imgui/issues/2109)
- [Multi-viewport features](https://github.com/ocornut/imgui/issues/1542)
Many projects are using this branch and it is kept in sync with master regularly.
##### [Return to Index](#index)
----
# Q&A: Integration
### Q: How to get started?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Read [Getting Started](https://github.com/ocornut/imgui/wiki/Getting-Started). <BR>
Read [EXAMPLES.md](https://github.com/ocornut/imgui/blob/master/docs/EXAMPLES.md). <BR>
Read [BACKENDS.md](https://github.com/ocornut/imgui/blob/master/docs/BACKENDS.md). <BR>
Read `PROGRAMMER GUIDE` section of [imgui.cpp](https://github.com/ocornut/imgui/blob/master/imgui.cpp). <BR>
The [Wiki](https://github.com/ocornut/imgui/wiki) is a hub to many resources and links.
For first-time users having issues compiling/linking/running or issues loading fonts, please use [GitHub Discussions](https://github.com/ocornut/imgui/discussions).
##### [Return to Index](#index)
---
### Q: How can I tell whether to dispatch mouse/keyboard to Dear ImGui or my application?
You can read the `io.WantCaptureMouse`, `io.WantCaptureKeyboard` and `io.WantTextInput` flags from the ImGuiIO structure.
- When `io.WantCaptureMouse` is set, you need to discard/hide the mouse inputs from your underlying application.
- When `io.WantCaptureKeyboard` is set, you need to discard/hide the keyboard inputs from your underlying application.
- When `io.WantTextInput` is set, you can notify your OS/engine to popup an on-screen keyboard, if available (e.g. on a mobile phone, or console OS).
Important: you should always pass your mouse/keyboard inputs to Dear ImGui, regardless of the value `io.WantCaptureMouse`/`io.WantCaptureKeyboard`. This is because e.g. we need to detect that you clicked in the void to unfocus its own windows, and other reasons.
```cpp
void MyLowLevelMouseButtonHandler(int button, bool down)
{
// (1) ALWAYS forward mouse data to ImGui! This is automatic with default backends. With your own backend:
ImGuiIO& io = ImGui::GetIO();
io.AddMouseButtonEvent(button, down);
// (2) ONLY forward mouse data to your underlying app/game.
if (!io.WantCaptureMouse)
my_game->HandleMouseData(...);
}
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
**Note:** The `io.WantCaptureMouse` is more correct that any manual attempt to "check if the mouse is hovering a window" (don't do that!). It handles mouse dragging correctly (both dragging that started over your application or over a Dear ImGui window) and handle e.g. popup and modal windows blocking inputs.
**Note:** Text input widget releases focus on the "KeyDown" event of the Return key, so the subsequent "KeyUp" event that your application receive will typically have `io.WantCaptureKeyboard == false`. Depending on your application logic it may or not be inconvenient to receive that KeyUp event. You might want to track which key-downs were targeted for Dear ImGui, e.g. with an array of bool, and filter out the corresponding key-ups.)
##### [Return to Index](#index)
---
### Q: How can I enable keyboard or gamepad controls?
- The gamepad/keyboard navigation is fairly functional and keeps being improved. The initial focus was to support game controllers, but keyboard is becoming increasingly and decently usable. Gamepad support is particularly useful to use Dear ImGui on a game console (e.g. PS4, Switch, XB1) without a mouse connected!
- Keyboard: set `io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard` to enable.
- Gamepad: set `io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad` to enable (with a supporting backend).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- See [Control Sheets for Gamepads](https://www.dearimgui.com/controls_sheets) (reference PNG/PSD for PS4, XB1, Switch gamepads).
- See `USING GAMEPAD/KEYBOARD NAVIGATION CONTROLS` section of [imgui.cpp](https://github.com/ocornut/imgui/blob/master/imgui.cpp) for more details.
##### [Return to Index](#index)
---
### Q: How can I use this on a machine without mouse, keyboard or screen? (input share, remote display)
- You can share your computer mouse seamlessly with your console/tablet/phone using solutions such as [Synergy](https://symless.com/synergy)
This is the preferred solution for developer productivity.
In particular, the [micro-synergy-client repository](https://github.com/symless/micro-synergy-client) has simple
and portable source code (uSynergy.c/.h) for a small embeddable client that you can use on any platform to connect
to your host computer, based on the Synergy 1.x protocol. Make sure you download the Synergy 1 server on your computer.
Console SDK also sometimes provide equivalent tooling or wrapper for Synergy-like protocols.
- Game console users: consider emulating a mouse cursor with DualShock4 touch pad or a spare analog stick as a mouse-emulation fallback.
- You may also use a third party solution such as [netImgui](https://github.com/sammyfreg/netImgui), [Remote ImGui](https://github.com/JordiRos/remoteimgui) or [imgui-ws](https://github.com/ggerganov/imgui-ws) which sends the vertices to render over the local network, allowing you to use Dear ImGui even on a screen-less machine. See [Wiki](https://github.com/ocornut/imgui/wiki) index for most details.
- For touch inputs, you can increase the hit box of widgets (via the `style.TouchPadding` setting) to accommodate for the lack of precision of touch inputs, but it is recommended you use a mouse or gamepad to allow optimizing for screen real-estate and precision.
##### [Return to Index](#index)
---
### Q: I integrated Dear ImGui in my engine and little squares are showing instead of text...
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Your renderer backend is not using the font texture correctly or it hasn't been uploaded to the GPU.
- If this happens using the standard backends: A) have you modified the font atlas after `ImGui_ImplXXX_NewFrame()`? B) maybe the texture failed to upload, which **can if your texture atlas is too big**. Also see [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md).
- If this happens with a custom backend: make sure you have uploaded the font texture to the GPU, that all shaders are rendering states are setup properly (e.g. texture is bound). Compare your code to existing backends and use a graphics debugger such as [RenderDoc](https://renderdoc.org) to debug your rendering states.
##### [Return to Index](#index)
---
### Q: I integrated Dear ImGui in my engine and some elements are clipping or disappearing when I move windows around...
### Q: I integrated Dear ImGui in my engine and some elements are displaying outside their expected windows boundaries...
You are probably mishandling the clipping rectangles in your render function.
Each draw command needs the triangle rendered using the clipping rectangle provided in the ImDrawCmd structure (`ImDrawCmd->CllipRect`).
Rectangles provided by Dear ImGui are defined as
`(x1=left,y1=top,x2=right,y2=bottom)`
and **NOT** as
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
`(x1,y1,width,height)`.
Refer to rendering backends in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder for references of how to handle the `ClipRect` field.
For example, the [DirectX11 backend](https://github.com/ocornut/imgui/blob/master/backends/imgui_impl_dx11.cpp) does this:
```cpp
// Project scissor/clipping rectangles into framebuffer space
ImVec2 clip_off = draw_data->DisplayPos;
ImVec2 clip_min(pcmd->ClipRect.x - clip_off.x, pcmd->ClipRect.y - clip_off.y);
ImVec2 clip_max(pcmd->ClipRect.z - clip_off.x, pcmd->ClipRect.w - clip_off.y);
if (clip_max.x <= clip_min.x || clip_max.y <= clip_min.y)
continue;
// Apply scissor/clipping rectangle
const D3D11_RECT r = { (LONG)clip_min.x, (LONG)clip_min.y, (LONG)clip_max.x, (LONG)clip_max.y };
ctx->RSSetScissorRects(1, &r);
```
##### [Return to Index](#index)
---
# Q&A: Usage
### Q: About the ID Stack system...
### Q: Why is my widget not reacting when I click on it?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
### Q: Why is the wrong widget reacting when I click on one?
### Q: How can I have widgets with an empty label?
### Q: How can I have multiple widgets with the same label?
### Q: How can I have multiple windows with the same label?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
**USING THE SAME LABEL+ID IS THE MOST COMMON USER MISTAKE:**
<table>
<tr>
<td><img src="https://github.com/ocornut/imgui/assets/8225057/76eb9467-74d1-4e95-9f56-be81c6dd029d"></td>
<td>
<pre lang="cpp">
ImGui::Begin("Incorrect!");
ImGui::DragFloat2("My value", &objects[0]->pos.x);
ImGui::DragFloat2("My value", &objects[1]->pos.x);
ImGui::DragFloat2("My value", &objects[2]->pos.x);
ImGui::End();
&nbsp;
ImGui::Begin("Correct!");
ImGui::DragFloat2("My value", &objects[0]->pos.x);
ImGui::DragFloat2("My value##2", &objects[1]->pos.x);
ImGui::DragFloat2("My value##3", &objects[2]->pos.x);
ImGui::End();
&nbsp;
ImGui::Begin("Also Correct!");
for (int n = 0; n < 3; n++)
{
ImGui::PushID(n);
ImGui::DragFloat2("My value", &objects[n]->pos.x);
ImGui::PopID();
}
ImGui::End();
</pre>
</td>
</tr>
</table>
A primer on labels and the ID Stack...
Dear ImGui internally needs to uniquely identify UI elements.
Elements that are typically not clickable (such as calls to the Text functions) don't need an ID.
Interactive widgets (such as calls to Button buttons) need a unique ID.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
**Unique IDs are used internally to track active widgets and occasionally associate state to widgets.<BR>
Unique IDs are implicitly built from the hash of multiple elements that identify the "path" to the UI element.**
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Since Dear ImGui 1.85, you can use `Demo>Tools>ID Stack Tool` or call `ImGui::ShowIDStackToolWindow()`. The tool display intermediate values leading to the creation of a unique ID, making things easier to debug and understand.
![Stack tool](https://user-images.githubusercontent.com/8225057/136235657-a0ea5665-dcd1-423f-9be6-dc3f8ced8f12.png)
- Unique ID are often derived from a string label and at minimum scoped within their host window:
```cpp
Begin("MyWindow");
Button("OK"); // Label = "OK", ID = hash of ("MyWindow", "OK")
Button("Cancel"); // Label = "Cancel", ID = hash of ("MyWindow", "Cancel")
End();
```
- Other elements such as tree nodes, etc. also pushes to the ID stack:
```cpp
Begin("MyWindow");
if (TreeNode("MyTreeNode"))
{
Button("OK"); // Label = "OK", ID = hash of ("MyWindow", "MyTreeNode", "OK")
TreePop();
}
End();
```
- Two items labeled "OK" in different windows or different tree locations won't collide:
```cpp
Begin("MyFirstWindow");
Button("OK"); // Label = "OK", ID = hash of ("MyFirstWindow", "OK")
End();
Begin("MyOtherWindow");
Button("OK"); // Label = "OK", ID = hash of ("MyOtherWindow", "OK")
End();
```
- If you have a same ID twice in the same location, you'll have a conflict:
```cpp
Begin("MyWindow");
Button("OK");
Button("OK"); // ERROR: ID collision with the first button! Interacting with either button will trigger the first one.
Button(""); // ERROR: ID collision with Begin("MyWindow")!
End();
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Fear not! This is easy to solve and there are many ways to solve it!
- Solving ID conflict in a simple/local context:
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
When passing a label you can optionally specify extra ID information within the string itself.
Use "##" to pass a complement to the ID that won't be visible to the end-user.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
This helps solve the simple collision cases when you know e.g. at compilation time which items
are going to be created:
```cpp
Begin("MyWindow");
Button("Play"); // Label = "Play", ID = hash of ("MyWindow", "Play")
Button("Play##foo1"); // Label = "Play", ID = hash of ("MyWindow", "Play##foo1") // Different from other buttons
Button("Play##foo2"); // Label = "Play", ID = hash of ("MyWindow", "Play##foo2") // Different from other buttons
Button("##foo"); // Label = "", ID = hash of ("MyWindow", "##foo") // Different from window
End();
```
- If you want to completely hide the label, but still need an ID:
```cpp
Checkbox("##On", &b); // Label = "", ID = hash of (..., "##On") // No visible label, just a checkbox!
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Occasionally/rarely you might want to change a label while preserving a constant ID. This allows
you to animate labels. For example, you may want to include varying information in a window title bar,
but windows are uniquely identified by their ID. Use "###" to pass a label that isn't part of ID:
```cpp
Button("Hello###ID"); // Label = "Hello", ID = hash of (..., "###ID")
Button("World###ID"); // Label = "World", ID = hash of (..., "###ID") // Same ID, different label
sprintf(buf, "My game (%f FPS)###MyGame", fps);
Begin(buf); // Variable title, ID = hash of "MyGame"
```
- Solving ID conflict in a more general manner:
Use `PushID()` / `PopID()` to create scopes and manipulate the ID stack, as to avoid ID conflicts
within the same window. This is the most convenient way of distinguishing ID when iterating and
creating many UI elements programmatically.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
You can push a pointer, a string, or an integer value into the ID stack.
Remember that IDs are formed from the concatenation of _everything_ pushed into the ID stack.
At each level of the stack, we store the seed used for items at this level of the ID stack.
```cpp
Begin("Window");
for (int i = 0; i < 100; i++)
{
PushID(i); // Push i to the id tack
Button("Click"); // Label = "Click", ID = hash of ("Window", i, "Click")
PopID();
}
for (int i = 0; i < 100; i++)
{
MyObject* obj = Objects[i];
PushID(obj);
Button("Click"); // Label = "Click", ID = hash of ("Window", obj pointer, "Click")
PopID();
}
for (int i = 0; i < 100; i++)
{
MyObject* obj = Objects[i];
PushID(obj->Name);
Button("Click"); // Label = "Click", ID = hash of ("Window", obj->Name, "Click")
PopID();
}
End();
```
- You can stack multiple prefixes into the ID stack:
```cpp
Button("Click"); // Label = "Click", ID = hash of (..., "Click")
PushID("node");
Button("Click"); // Label = "Click", ID = hash of (..., "node", "Click")
PushID(my_ptr);
Button("Click"); // Label = "Click", ID = hash of (..., "node", my_ptr, "Click")
PopID();
PopID();
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Tree nodes implicitly create a scope for you by calling `PushID()`:
```cpp
Button("Click"); // Label = "Click", ID = hash of (..., "Click")
if (TreeNode("node")) // <-- this function call will do a PushID() for you (unless instructed not to, with a special flag)
{
Button("Click"); // Label = "Click", ID = hash of (..., "node", "Click")
TreePop();
}
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
When working with trees, IDs are used to preserve the open/close state of each tree node.
Depending on your use cases you may want to use strings, indices, or pointers as ID.
- e.g. when following a single pointer that may change over time, using a static string as ID
will preserve your node open/closed state when the targeted object change.
- e.g. when displaying a list of objects, using indices or pointers as ID will preserve the
node open/closed state differently. See what makes more sense in your situation!
##### [Return to Index](#index)
---
### Q: How can I display an image? What is ImTextureID, how does it work?
Short explanation:
- Refer to [Image Loading and Displaying Examples](https://github.com/ocornut/imgui/wiki/Image-Loading-and-Displaying-Examples) on the [Wiki](https://github.com/ocornut/imgui/wiki).
- You may use functions such as `ImGui::Image()`, `ImGui::ImageButton()` or lower-level `ImDrawList::AddImage()` to emit draw calls that will use your own textures.
- Actual textures are identified in a way that is up to the user/engine. Those identifiers are stored and passed as ImTextureID (void*) value.
- Loading image files from the disk and turning them into a texture is not within the scope of Dear ImGui (for a good reason).
**Please read documentations or tutorials on your graphics API to understand how to display textures on the screen before moving onward.**
Long explanation:
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Dear ImGui's job is to create "meshes", defined in a renderer-agnostic format made of draw commands and vertices. At the end of the frame, those meshes (ImDrawList) will be displayed by your rendering function. They are made up of textured polygons and the code to render them is generally fairly short (a few dozen lines). In the examples/ folder, we provide functions for popular graphics APIs (OpenGL, DirectX, etc.).
- Each rendering function decides on a data type to represent "textures". The concept of what is a "texture" is entirely tied to your underlying engine/graphics API.
We carry the information to identify a "texture" in the ImTextureID type.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
ImTextureID is nothing more than a void*, aka 4/8 bytes worth of data: just enough to store one pointer or integer of your choice.
Dear ImGui doesn't know or understand what you are storing in ImTextureID, it merely passes ImTextureID values until they reach your rendering function.
- In the [examples/](https://github.com/ocornut/imgui/tree/master/examples) backends, for each graphics API we decided on a type that is likely to be a good representation for specifying an image from the end-user perspective. This is what the _examples_ rendering functions are using:
```cpp
OpenGL:
- ImTextureID = GLuint
- See ImGui_ImplOpenGL3_RenderDrawData() function in imgui_impl_opengl3.cpp
```
```cpp
DirectX9:
- ImTextureID = LPDIRECT3DTEXTURE9
- See ImGui_ImplDX9_RenderDrawData() function in imgui_impl_dx9.cpp
```
```cpp
DirectX11:
- ImTextureID = ID3D11ShaderResourceView*
- See ImGui_ImplDX11_RenderDrawData() function in imgui_impl_dx11.cpp
```
```cpp
DirectX12:
- ImTextureID = D3D12_GPU_DESCRIPTOR_HANDLE
- See ImGui_ImplDX12_RenderDrawData() function in imgui_impl_dx12.cpp
```
For example, in the OpenGL example backend we store raw OpenGL texture identifier (GLuint) inside ImTextureID.
Whereas in the DirectX11 example backend we store a pointer to ID3D11ShaderResourceView inside ImTextureID, which is a higher-level structure tying together both the texture and information about its format and how to read it.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- If you have a custom engine built over e.g. OpenGL, instead of passing GLuint around you may decide to use a high-level data type to carry information about the texture as well as how to display it (shaders, etc.). The decision of what to use as ImTextureID can always be made better by knowing how your codebase is designed. If your engine has high-level data types for "textures" and "material" then you may want to use them.
If you are starting with OpenGL or DirectX or Vulkan and haven't built much of a rendering engine over them, keeping the default ImTextureID representation suggested by the example backends is probably the best choice.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
(Advanced users may also decide to keep a low-level type in ImTextureID, use ImDrawList callback and pass information to their renderer)
User code may do:
```cpp
// Cast our texture type to ImTextureID / void*
MyTexture* texture = g_CoffeeTableTexture;
ImGui::Image((void*)texture, ImVec2(texture->Width, texture->Height));
```
The renderer function called after ImGui::Render() will receive that same value that the user code passed:
```cpp
// Cast ImTextureID / void* stored in the draw command as our texture type
MyTexture* texture = (MyTexture*)pcmd->GetTexID();
MyEngineBindTexture2D(texture);
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Once you understand this design, you will understand that loading image files and turning them into displayable textures is not within the scope of Dear ImGui.
This is by design and is a good thing because it means your code has full control over your data types and how you display them.
If you want to display an image file (e.g. PNG file) on the screen, please refer to documentation and tutorials for the graphics API you are using.
Refer to [Image Loading and Displaying Examples](https://github.com/ocornut/imgui/wiki/Image-Loading-and-Displaying-Examples) on the [Wiki](https://github.com/ocornut/imgui/wiki) to find simplified examples for loading textures with OpenGL, DirectX9 and DirectX11.
C/C++ tip: a void* is pointer-sized storage. You may safely store any pointer or integer into it by casting your value to ImTextureID / void*, and vice-versa.
Because both end-points (user code and rendering function) are under your control, you know exactly what is stored inside the ImTextureID / void*.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Here are some examples:
```cpp
GLuint my_tex = XXX;
void* my_void_ptr;
my_void_ptr = (void*)(intptr_t)my_tex; // cast a GLuint into a void* (we don't take its address! we literally store the value inside the pointer)
my_tex = (GLuint)(intptr_t)my_void_ptr; // cast a void* into a GLuint
ID3D11ShaderResourceView* my_dx11_srv = XXX;
void* my_void_ptr;
my_void_ptr = (void*)my_dx11_srv; // cast a ID3D11ShaderResourceView* into an opaque void*
my_dx11_srv = (ID3D11ShaderResourceView*)my_void_ptr; // cast a void* into a ID3D11ShaderResourceView*
```
Finally, you may call `ImGui::ShowMetricsWindow()` to explore/visualize/understand how the ImDrawList are generated.
##### [Return to Index](#index)
---
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
### Q: How can I use maths operators with ImVec2?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
We do not export maths operators by default in imgui.h in order to not conflict with the use of your own maths types and maths operators. As a convenience, you may use `#define IMGUI_DEFINE_MATH_OPERATORS` + `#include "imgui.h"` to access our basic maths operators.
##### [Return to Index](#index)
---
### Q: How can I use my own maths types instead of ImVec2/ImVec4?
You can setup your [imconfig.h](https://github.com/ocornut/imgui/blob/master/imconfig.h) file with `IM_VEC2_CLASS_EXTRA`/`IM_VEC4_CLASS_EXTRA` macros to add implicit type conversions to our own maths types.
This way you will be able to use your own types everywhere, e.g. passing `MyVector2` or `glm::vec2` to ImGui functions instead of `ImVec2`.
##### [Return to Index](#index)
---
### Q: How can I interact with standard C++ types (such as std::string and std::vector)?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Being highly portable (backends/bindings for several languages, frameworks, programming styles, obscure or older platforms/compilers), and aiming for compatibility & performance suitable for every modern real-time game engine, Dear ImGui does not use any of std C++ types. We use raw types (e.g. char* instead of std::string) because they adapt to more use cases.
- To use ImGui::InputText() with a std::string or any resizable string class, see [misc/cpp/imgui_stdlib.h](https://github.com/ocornut/imgui/blob/master/misc/cpp/imgui_stdlib.h).
- To use combo boxes and list boxes with `std::vector` or any other data structure: the `BeginCombo()/EndCombo()` API
lets you iterate and submit items yourself, so does the `ListBoxHeader()/ListBoxFooter()` API.
Prefer using them over the old and awkward `Combo()/ListBox()` api.
- Generally for most high-level types you should be able to access the underlying data type.
You may write your own one-liner wrappers to facilitate user code (tip: add new functions in ImGui:: namespace from your code).
- Dear ImGui applications often need to make intensive use of strings. It is expected that many of the strings you will pass
to the API are raw literals (free in C/C++) or allocated in a manner that won't incur a large cost on your application.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Please bear in mind that using `std::string` on applications with a large amount of UI may incur unsatisfactory performances.
Modern implementations of `std::string` often include small-string optimization (which is often a local buffer) but those
are not configurable and not the same across implementations.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- If you are finding your UI traversal cost to be too large, make sure your string usage is not leading to an excessive amount
of heap allocations. Consider using literals, statically sized buffers, and your own helper functions. A common pattern
is that you will need to build lots of strings on the fly, and their maximum length can be easily scoped ahead.
One possible implementation of a helper to facilitate printf-style building of strings: https://github.com/ocornut/Str
This is a small helper where you can instance strings with configurable local buffers length. Many game engines will
provide similar or better string helpers.
##### [Return to Index](#index)
---
### Q: How can I display custom shapes? (using low-level ImDrawList API)
- You can use the low-level `ImDrawList` api to render shapes within a window.
```cpp
ImGui::Begin("My shapes");
ImDrawList* draw_list = ImGui::GetWindowDrawList();
// Get the current ImGui cursor position
ImVec2 p = ImGui::GetCursorScreenPos();
// Draw a red circle
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
draw_list->AddCircleFilled(ImVec2(p.x + 50, p.y + 50), 30.0f, IM_COL32(255, 0, 0, 255));
// Draw a 3 pixel thick yellow line
draw_list->AddLine(ImVec2(p.x, p.y), ImVec2(p.x + 100.0f, p.y + 100.0f), IM_COL32(255, 255, 0, 255), 3.0f);
// Advance the ImGui cursor to claim space in the window (otherwise the window will appear small and needs to be resized)
ImGui::Dummy(ImVec2(200, 200));
ImGui::End();
```
![ImDrawList usage](https://raw.githubusercontent.com/wiki/ocornut/imgui/tutorials/CustomRendering01.png)
- Refer to "Demo > Examples > Custom Rendering" in the demo window and read the code of `ShowExampleAppCustomRendering()` in `imgui_demo.cpp` from more examples.
- To generate colors: you can use the macro `IM_COL32(255,255,255,255)` to generate them at compile time, or use `ImGui::GetColorU32(IM_COL32(255,255,255,255))` or `ImGui::GetColorU32(ImVec4(1.0f,1.0f,1.0f,1.0f))` to generate a color that is multiplied by the current value of `style.Alpha`.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Math operators: if you have setup `IM_VEC2_CLASS_EXTRA` in `imconfig.h` to bind your own math types, you can use your own math types and their natural operators instead of ImVec2. ImVec2 by default doesn't export any math operators in the public API. You may use `#define IMGUI_DEFINE_MATH_OPERATORS` `#include "imgui.h"` to use our math operators, but instead prefer using your own math library and set it up in `imconfig.h`.
- You can use `ImGui::GetBackgroundDrawList()` or `ImGui::GetForegroundDrawList()` to access draw lists which will be displayed behind and over every other Dear ImGui window (one bg/fg drawlist per viewport). This is very convenient if you need to quickly display something on the screen that is not associated with a Dear ImGui window.
- You can also create your own empty window and draw inside it. Call Begin() with the NoBackground | NoDecoration | NoSavedSettings | NoInputs flags (The `ImGuiWindowFlags_NoDecoration` flag itself is a shortcut for NoTitleBar | NoResize | NoScrollbar | NoCollapse). Then you can retrieve the ImDrawList* via `GetWindowDrawList()` and draw to it in any way you like.
- You can create your own ImDrawList instance. You'll need to initialize them with `ImGui::GetDrawListSharedData()`, or create your own instancing `ImDrawListSharedData`, and then call your renderer function with your own ImDrawList or ImDrawData data.
- Looking for fun? The [ImDrawList coding party 2020](https://github.com/ocornut/imgui/issues/3606) thread is full of "don't do this at home" extreme uses of the ImDrawList API.
##### [Return to Index](#index)
---
# Q&A: Fonts, Text
### Q: How should I handle DPI in my application?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
The short answer is: obtain the desired DPI scale, load your fonts resized with that scale (always round down fonts size to the nearest integer), and scale your Style structure accordingly using `style.ScaleAllSizes()`.
Your application may want to detect DPI change and reload the fonts and reset style between frames.
Your ui code should avoid using hardcoded constants for size and positioning. Prefer to express values as multiple of reference values such as `ImGui::GetFontSize()` or `ImGui::GetFrameHeight()`. So e.g. instead of seeing a hardcoded height of 500 for a given item/window, you may want to use `30*ImGui::GetFontSize()` instead.
Down the line Dear ImGui will provide a variety of standardized reference values to facilitate using this.
Applications in the `examples/` folder are not DPI aware partly because they are unable to load a custom font from the file-system (may change that in the future).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
The reason DPI is not auto-magically solved in stock examples is that we don't yet have a satisfying solution for the "multi-dpi" problem (using the `docking` branch: when multiple viewport windows are over multiple monitors using different DPI scales). The current way to handle this on the application side is:
- Create and maintain one font atlas per active DPI scale (e.g. by iterating `platform_io.Monitors[]` before `NewFrame()`).
- Hook `platform_io.OnChangedViewport()` to detect when a `Begin()` call makes a Dear ImGui window change monitor (and therefore DPI).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- In the hook: swap atlas, swap style with correctly sized one, and remap the current font from one atlas to the other (you may need to maintain a remapping table of your fonts at varying DPI scales).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
This approach is relatively easy and functional but comes with two issues:
- It's not possibly to reliably size or position a window ahead of `Begin()` without knowing on which monitor it'll land.
- Style override may be lost during the `Begin()` call crossing monitor boundaries. You may need to do some custom scaling mumbo-jumbo if you want your `OnChangedViewport()` handler to preserve style overrides.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Please note that if you are not using multi-viewports with multi-monitors using different DPI scales, you can ignore that and use the simpler technique recommended at the top.
On Windows, in addition to scaling the font size (make sure to round to an integer) and using `style.ScaleAllSizes()`, you will need to inform Windows that your application is DPI aware. If this is not done, Windows will scale the application window and the UI text will be blurry. Potential solutions to indicate DPI awareness on Windows are:
- For SDL: the flag `SDL_WINDOW_ALLOW_HIGHDPI` needs to be passed to `SDL_CreateWindow()``.
- For GLFW: this is done automatically.
- For other Windows projects with other backends, or wrapper projects:
- We provide a `ImGui_ImplWin32_EnableDpiAwareness()` helper method in the Win32 backend.
- Use an [application manifest file](https://learn.microsoft.com/en-us/windows/win32/hidpi/setting-the-default-dpi-awareness-for-a-process) to set the `<dpiAware>` property.
### Q: How can I load a different font than the default?
Use the font atlas to load the TTF/OTF file you want:
```cpp
ImGuiIO& io = ImGui::GetIO();
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels);
io.Fonts->GetTexDataAsRGBA32() or GetTexDataAsAlpha8()
```
Default is ProggyClean.ttf, monospace, rendered at size 13, embedded in dear imgui's source code.
(Tip: monospace fonts are convenient because they allow to facilitate horizontal alignment directly at the string level.)
(Read the [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) file for more details about font loading.)
New programmers: remember that in C/C++ and most programming languages if you want to use a
backslash \ within a string literal, you need to write it double backslash "\\":
```cpp
io.Fonts->AddFontFromFileTTF("MyFolder\MyFont.ttf", size); // WRONG (you are escaping the M here!)
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
io.Fonts->AddFontFromFileTTF("MyFolder\\MyFont.ttf", size); // CORRECT (Windows only)
io.Fonts->AddFontFromFileTTF("MyFolder/MyFont.ttf", size); // ALSO CORRECT
```
##### [Return to Index](#index)
---
### Q: How can I easily use icons in my application?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
The most convenient and practical way is to merge an icon font such as FontAwesome inside your
main font. Then you can refer to icons within your strings.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Read the [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) file for more details about icons font loading.
##### [Return to Index](#index)
---
### Q: How can I load multiple fonts?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Use the font atlas to pack them into a single texture. Read [docs/FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) for more details.
##### [Return to Index](#index)
---
### Q: How can I display and input non-Latin characters such as Chinese, Japanese, Korean, Cyrillic?
When loading a font, pass custom Unicode ranges to specify the glyphs to load.
```cpp
// Add default Japanese ranges
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, nullptr, io.Fonts->GetGlyphRangesJapanese());
// Or create your own custom ranges (e.g. for a game you can feed your entire game script and only build the characters the game need)
ImVector<ImWchar> ranges;
ImFontGlyphRangesBuilder builder;
builder.AddText("Hello world"); // Add a string (here "Hello world" contains 7 unique characters)
builder.AddChar(0x7262); // Add a specific character
builder.AddRanges(io.Fonts->GetGlyphRangesJapanese()); // Add one of the default ranges
builder.BuildRanges(&ranges); // Build the final result (ordered ranges with all the unique characters submitted)
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", 16.0f, nullptr, ranges.Data);
```
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
All your strings need to use UTF-8 encoding.
You need to tell your compiler to use UTF-8, or in C++11 you can encode a string literal in UTF-8 by using the u8"hello" syntax.
Specifying literal in your source code using a local code page (such as CP-923 for Japanese or CP-1251 for Cyrillic) will NOT work!
See [About UTF-8 Encoding](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md#about-utf-8-encoding) section
of [FONTS.md](https://github.com/ocornut/imgui/blob/master/docs/FONTS.md) for details about UTF-8 Encoding.
Text input: it is up to your application to pass the right character code by calling `io.AddInputCharacter()`.
The applications in examples/ are doing that.
Windows: you can use the WM_CHAR or WM_UNICHAR or WM_IME_CHAR message (depending if your app is built using Unicode or MultiByte mode).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
You may also use `MultiByteToWideChar()` or `ToUnicode()` to retrieve Unicode codepoints from MultiByte characters or keyboard state.
Windows: if your language is relying on an Input Method Editor (IME), you can write your HWND to ImGui::GetMainViewport()->PlatformHandleRaw
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
for the default implementation of io.SetPlatformImeDataFn() to set your Microsoft IME position correctly.
##### [Return to Index](#index)
---
# Q&A: Concerns
### Q: Who uses Dear ImGui?
You may take a look at:
- [Quotes](https://github.com/ocornut/imgui/wiki/Quotes)
- [Software using Dear ImGui](https://github.com/ocornut/imgui/wiki/Software-using-dear-imgui)
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- [Funding & Sponsors](https://github.com/ocornut/imgui/wiki/Funding)
- [Gallery](https://github.com/ocornut/imgui/issues/7503)
##### [Return to Index](#index)
---
### Q: Can you create elaborate/serious tools with Dear ImGui?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Yes. People have written game editors, data browsers, debuggers, profilers, and all sorts of non-trivial tools with the library. In my experience, the simplicity of the API is very empowering. Your UI runs close to your live data. Make the tools always-on and everybody in the team will be inclined to create new tools (as opposed to more "offline" UI toolkits where only a fraction of your team effectively creates tools). The list of sponsors below is also an indicator that serious game teams have been using the library.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Dear ImGui is very programmer centric and the immediate-mode GUI paradigm might require you to readjust some habits before you can realize its full potential. Dear ImGui is about making things that are simple, efficient, and powerful.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Dear ImGui is built to be efficient and scalable toward the needs for AAA-quality applications running all day. The IMGUI paradigm offers different opportunities for optimization than the more typical RMGUI paradigm.
##### [Return to Index](#index)
---
### Q: Can you reskin the look of Dear ImGui?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Somewhat. You can alter the look of the interface to some degree: changing colors, sizes, padding, rounding, and fonts. However, as Dear ImGui is designed and optimized to create debug tools, the amount of skinning you can apply is limited. There is only so much you can stray away from the default look and feel of the interface. Dear ImGui is NOT designed to create a user interface for games, although with ingenious use of the low-level API you can do it.
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
A reasonably skinned application may look like (screenshot from [#2529](https://github.com/ocornut/imgui/issues/2529#issuecomment-524281119)):
![minipars](https://user-images.githubusercontent.com/314805/63589441-d9794f00-c5b1-11e9-8d96-cfc1b93702f7.png)
##### [Return to Index](#index)
---
### Q: Why using C++ (as opposed to C)?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
Dear ImGui takes advantage of a few C++ language features for convenience but nothing anywhere Boost insanity/quagmire. Dear ImGui doesn't use any C++ header file. Dear ImGui uses a very small subset of C++11 features. In particular, function overloading and default parameters are used to make the API easier to use and code terser. Doing so I believe the API is sitting on a sweet spot and giving up on those features would make the API more cumbersome. Other features such as namespace, constructors, and templates (in the case of the ImVector<> class) are also relied on as a convenience.
There is an auto-generated [c-api for Dear ImGui (cimgui)](https://github.com/cimgui/cimgui) by Sonoro1234 and Stephan Dilly. It is designed for creating bindings to other languages. If possible, I would suggest using your target language functionalities to try replicating the function overloading and default parameters used in C++ else the API may be harder to use. Also see [Bindings](https://github.com/ocornut/imgui/wiki/Bindings) for various third-party bindings.
##### [Return to Index](#index)
---
# Q&A: Community
### Q: How can I help?
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- Businesses: please reach out to `omar AT dearimgui.com` if you work in a place using Dear ImGui! We can discuss ways for your company to fund development via invoiced technical support, maintenance, or sponsoring contacts. This is among the most useful thing you can do for Dear ImGui. With increased funding, we can hire more people to work on this project. Please see [Funding](https://github.com/ocornut/imgui/wiki/Funding) page.
- Individuals: you can support continued maintenance and development via PayPal donations. See [README](https://github.com/ocornut/imgui/blob/master/docs/README.md).
Squashed 'deps/imgui/' changes from f33737806..2db79d086 2db79d086 Merge branch 'master' into docking 00ad3c65b Version 1.90.7 f814ef816 Commented out CaptureKeyboardFromApp(), CaptureMouseFromApp(). Commented out obsolete IsKeyPressedMap() from imgui_internal.h (can call IsKeyPressed). Comments b9084949b Fixed typo in IsMouseDragging and GetMouseDragDelta's documentation. (#7620) 86931393a Shortcuts: Revert "SetShortcutRouting: require explicit routing. (#456) 975beafaf Merge branch 'master' into docking 7832e6a70 Shortcuts: Routing: fixed mixed keys<>chars filtering not applying on global routes. (#456, #7618) 85d982011 Shortcuts: fixed priority of route calculation (higher first). (#456, #7618) fee021059 Merge branch 'master' into docking ce4e210dc Shotcuts: renamed ImGuiInputFlags_RouteGlobalOverFocused -> ImGuiInputFlags_RouteOverFocused, ImGuiInputFlags_RouteGlobalOverActive -> ImGuiInputFlags_RouteOverActive in previsiion of using them with a Hovered route. (#456) 5ce3d2995 Shortcuts: rename ImGuiInputFlags_RouteGlobalHighest to ImGuiInputFlags_RouteGlobalOverActive, made ImGuiInputFlags_RouteGlobalOverFocused and ImGuiInputFlags_RouteGlobalOverActive flags. (#456) 650cb51bf Shortcuts: renamed ImGuiInputFlags_RouteActiveItem to ImGuiInputFlags_RouteActive. (#456, #7618) ef9d525f0 Shortcuts: added ImGuiInputFlags_RouteActiveItem. (#456, #7618) + rearrange Changelog 16b72f2d2 Comments 29439bdd2 Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. (#1710) 374b9a7fb Demo: Documents: refactor + add Renaming option. (#7233) c150ad50c Shortcuts: claim mods ownership once pressed. (#456, #2637, #2620, #2891, #3370, #3724, #4828, #5108, #5242, #5641) 1002cfa6d Demo, Shortcut(): amend Shortcuts demo. (#456) 7c71e6637 Shortcuts, SetShortcutRouting: move ImGuiInputFlags_RouteFromRootWindow evaluation to SetShortcutRouting() for now. (#456) 5ecef2f32 Merge branch 'master' into docking d5a600e9c Shortcuts, SetShortcutRouting: added ImGuiInputFlags_RouteFromRootWindow. Made it possible for SetShortcutRouting() to query for another location. 0eb025f48 Internals: move ItemHandleShortcut() next to Shortcut(), it's calling it anyhow. (#456) a689fa262 SetShortcutRouting: require explicit routing. (#456) c06e6340c Shortcuts: added ImGuiInputFlags_Tooltip. (#456) 77e417189 Shortcuts: added flags to SetNextItemShortcut(). (#456) 197f8904f Shortcuts, Nav: make SetNextItemShortcut() work when another item is active. Made NavCalcPreferredRefPos() take account for remote activation. (#456) dc5caa483 Demo: added "Shortcuts" section. (#456, #2637) fc512a247 Inputs: Added Shortcut(), SetNextItemShortcut(). Added ImGuiInputFlags, ImGuiInputFlags_RouteXXXX. (#456, #2637) 85513de24 Internals, Inputs: *Breaking* Swapped parameter order of owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked(). (#456) 900b29055 Internals, Inputs: *Breaking* Swapped parameter order of Shortcut(). (#456) 55748cdbe Internals, Inputs: *Breaking* Renamed ImGuiKeyOwner_None to ImGuiKeyOwner_NoOwner: avoid confusion with non zero value, makes IsKeyPressed() calls using ImGuiKeyOwner_NoOwner more explicit. ec1d2be96 Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking. (#2496, #3907, #6308, #7615) 6d1a6f1c7 Internals, Inputs: Comments, alignment. 4c3eac2c1 Backends: OpenGL3: Fixed zealous warning by initializing last_pixel_unpack_buffer. (#7614) 36ffdd69d Merge remote-tracking branch 'origin/master' into docking 9ebab255d Docking: *BREAKING* changed signature of DockSpaceOverViewport() to allow passing an explicit dockspace id if desired. (#7611) a1566c5e1 Tables: fixed 28a283b breaking PageDown on tables with no interactive items. aa725ca79 Inputs: moving ImGuiInputFlags_RouteAlways into ImGuiInputFlags_RouteTypeMask_ cd48059dc Tables: comments about skipping access to table data in coarse clipping path. 28a283b46 Windows: BeginChild(), Tables:fixed visibility of fully clipped child windows and tables to Test Engine. aa5a6098e Fixed typos in comments (#7599) d39ca33b6 Fixed false positive with PVS-Studio. ae8218a3e Inputs, Shortcut: fixes some edge cases for GetKeyChordName(), clarify that it is aimed at display. (#456) 25e279ee7 Inputs: Treat ctrl-left-click as right click when ConfigMacOSXBehaviors is set. (#2343) b4f564c1e Internals: Shortcuts: *Breaking* : rename ImGuiInputFlags_RouteGlobalLow -> ImGuiInputFlags_RouteGlobal, ImGuiInputFlags_RouteGlobal -> ImGuiInputFlags_RouteGlobalOverFocused, ImGuiInputFlags_RouteGlobalHigh -> ImGuiInputFlags_RouteGlobalHighest (#456) b39fc84f8 Merge branch 'master' into docking 5107e58b0 Inputs: amend changelog and clarify how the swap might be a breaking change for a minority of users. (#2343) 8bd5d1d42 Inputs: Fixed swapping of keys associated to mods. Fixed warnings. (#2343, #4084, #5923, #456) 774710664 Inputs: swap Ctrl and Cmd on macOS X, remove ImGuiMod_Shortcut. (#2343, #4084, #5923, #456) 07dbcf1f7 Fixed typos. (#7593) 93daf2322 Examples: SDL3: updates for latest SDL3 API changes. e45efa995 Backends: SDL3: Rename SDLK_QUOTE and SDLK_BACKQUOTE to SDLK_APOSTROPHE and SDLK_GRAVE. (#7580) 5d973a87d Backends: SDL_Renderer2/SDL_Renderer3: and ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. af2fbf043 Backends/Internals: Don't use IME and clipboard default win32 functions when WINAPI_FAMILY_GAMES (#7585) 15d8d41f8 Examples: add missing ImGuiConfigFlags_DockingEnable flag in some examples. eabe98f6d Merge branch 'master' into docking (incl merge moved CurrentDpiScale field) e4576914c Internals: amend f806c76 to better match docking + fixed unused static forward declaration warning. d0524df88 Internals: slight refactor FindHoveredWindow() -> FindHoveredWindowEx() toward reducing far-away code duplication. f806c76e9 Tables, Dpi: added dummy g.DpiScale storage (to be altered in docking), using to scale tables border hit thickness. f0912833b Update FAQ.md (#7581) ac90e1bd5 Backends: Win32: replace bd != nullptr assert with early out. (#6275) 0a5d40a01 Update FAQ.md d06b8b58d Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. 5e2368045 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 510eb8f48 Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041) f48aae600 Version 1.90.7 WIP e391fe2e6 Merge branch 'master' into docking 6ccc561a2 Version 1.90.6 0d483a1c8 Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562) 92df32d33 Backends: OpenGL3: minor update of generated loader to match latest downloaded glcorearb.h/khrplatform.h files. 1ab1af80c Backends: Win32: Facepalm revert part of d15574c + additional commentary (#6275) d15574ce2 Backends: Win32: Removed silent return when calling ImGui_ImplWin32_WndProcHandler() with no active context! (#6275) 8b2c6dd42 Backends: Vulkan: reworked swap-chain resize handling for secondary viewports to work with typical Linux setups. (#2626, #3390, #3758, #7508, #7513) d4495446d Windows, Internal: added experimental SkipRefresh mode. (#3515, #4763, #7556, #5116 , #4076, #2749, #2268) f5d185238 Viewports: fixed outer-right edge of MenuBar clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) 2f2d5070f Merge branch 'master' into docking 0b309471f Windows: Changed default ClipRect to extend to windows' left and right borders. (#3312, #7540, #3756, #6170, #6365) 0c9c12c1b InnerClipRect use ImFloor() matching docking branch (fix c41868531 for #6861, #2884, followed by rename 94da5842) 6ebbecc6a Realign assignments. fc4d818e1 Tables: Angled headers: added TableAngledHeadersTextAlign, ImGuiStyleVar_TableAngledHeadersTextAlign. (#6917) 4bb756714 Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917) b30df8890 Table: Angled Headers: internal refactor to facilitate changing angled header bg and text colors per column. (#6917) ebb8d7810 Backends: Vulkan: Create a custom pipeline for secondary viewports. (#6325, #6305, #7398, #3459, #3253, #3522) 49e70e60a Backends: Vulkan: Stripped misleading leftover of ImGui_ImplVulkanH_Window::Pipeline (#6325, #6305, #7398, #3459, #3253, #3522) 9d6818d0c Docking: comments, clairfy why we store style override on dragged windows. Clarify why we don't need to store alpha. (#7535, #2771) 558c57a08 Fixed static analyzer warning "Pointer to local array 'overlay_buf' is stored outside the scope". Technically not used outside that scope, but best to play nice. 5717f0a33 Merge branch 'master' into docking 50b2ff0bf ImGuiIO: moved IMGUI_DISABLE_OBSOLETE_KEYIO block lower in the structure so other fields layout are not affected by it (#7534) 6ef4f67fa ImDrawList: moved cold fields lower in the structure so hot fields are closer to each others + better packed ImGuiNavItemData a60387a3c Backends: GLFW: Add define guards for glfw native defines. (#7536) 913151caa Demo: move progress bars to their own section. c895e987a ProgressBar: added indeterminate mode by passing an animated negative value. (#5316, #5370, #1901) b8a44b198 TreeNode: added ImGuiTreeNodeFlags_SpanTextWidth. (#6937) baaaaea9e Demo: tweak TreeNode demo. da18fcb7a Internals: ensure ButtonBehavior() is called with non 0 id. b720c0f54 Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (#6582, #4854) 07e8ff9a8 Backends: Win32: Fixed a warning + moved header cruft below Changelog. b555984a9 Merge branch 'master' into docking fa0120ea5 Windows: Fixed subsequent Begin() append calls from setting last item information for title-bar. (#7506, #823) 361432a0b TreeNode: fixed layout so that TreeNode("") or TreeNode("##HiddenLabel") may properly be used with SameLine(0,0). (#7505, #282) eba46cb0d Drag and Drop: assert when nesting BeginDragDropSource() and BeginDragDropTarget() (#7504) + update Gallery links 9ec299ebe Backends: OpenGL: Detect ES3 contexts on desktop based on version string, (#7447) 4cb0fe3c7 Merge branch 'master' into docking 7b8107e7c Examples: GLFW+WebGPU: Rename example_emscripten_wgpu/ to example_glfw_wgpu/ (#7435, #7132) 648278cd6 Examples: GLFW+WebGPU: Amends. (#7435, #7132) 80a5fdb10 Examples: GLFW+WebGPU: Fixed condition for when to recreate swapchain. (#7435, #7132) f9df6bf66 Examples: GLFW+WebGPU: added support for WebGPU-native/Dawn (#7435, #7132) b475309fa Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. (#7399, #7404) daecfffef Text, DrawList: Improved handling of long single-line wrapped text. (#7496, #5720) fab96a6e5 Backends: SDL3: Re-enable calling SDL_StartTextInput()/SDL_StopTextInput(). (#7452, #6306, #6071, #1953) dad1689bf Examples: SDL3: amend for removal of SDL_RENDERER_ACCELERATED. c1743eef4 Docking: when io.ConfigDockingWithShift is enabled, fixed help tooltip erroneously reading SetNextWindowXXX() data. (#6709, #4643, #7491) 3caa79c8a Version 1.90.6 WIP 76bc1b825 Extracted part of NewFrame() into SetupDrawListSharedData() for documentation purpose. (#7495, #6406) f790d5166 Silent zealous/stupid warning introduced by Clang 16 (shipping with VS2022) with -Weverything. Pointers are now illegal! 1db579d45 Merge branch 'master' into docking 231cbee0f Version 1.90.5 4f9ba19e5 Drags, Sliders, Inputs: Reactivated decimal point replacement for SliderScalar and DragScalar. (#7389, #6719, #2278) e7712ff10 Out of courtesy/consistency move all the DebugHookIdInfo compares into ifndef block. f959c417f Refactor moving ID stack functions to their own section (part 2) 0bf134a8e Refactor moving ID stack functions to their own section. 9a2b598ec ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox(). d3c3514a5 Tables: Fixed auto-width columns when using synced-instances of same table. (#7218) 25a492f33 ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451) 9638c2839 Internals: adding ImGuiNavMoveFlags_NoClearActiveId even though there's currently no satisfying way to take advantage of it. (#1418) 742e53434 Child Windows: adjust resizing limits to match window padding rather than inner clipping rectangle. (#7440) 515b437c0 Child windows: look at the parent window's flags to decide whether to clamp child resizes. (#7440, #1710) 976dc2396 Windows: extend outer resize borders to the edges when there are no corner grips. (#7440, #1710) 37b37fc2a DrawList: Allow AddText() to accept null ranges. (#3615, 7391) 5c5ae806a Comments cf4c10bef Style: added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle. (#7411) f0802287d Tables: Angled headers: fixed table contents overflowing when a list clipper is used. (#7416) 29ff159f9 Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow stops being called. (#7416) 38ddfb24f Tables: Angled headers: fixed border hit box extending beyond non-scrollable tables. (#7416) 8be48a44f Backends: WebGPU: Avoid using -1u literal (#7436) 085781f5c Merge branch 'master' into docking 868facff9 ImDrawList: (Breaking) merge float radius_x/radius_y parameters into ImVec2 radius in PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743, #7417) 0a1f5b94e Demo: Two minor fixes (unchecked BeginTooltip + incorrect height constraint) (#7410)l 40df3db1a Tweaking terminology adcc3217c Revert "Docking: Fix C++26 zealous warnings (#7383, #7089)" + Disable warnings 9d9ca37a8 Docking: Fix C++26 zealous warnings (#7383, #7089) da29b776e Backends: SDL3: Fix leak of SDL_GetGamepads() return value (#7381) 3c435c029 Inputs: (Breaking) More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set. (#4921) 286cd5bd4 Internals, InputText: removed ImGuiInputSource_Clipboard. (#4005) fc570ac92 Examples: WGPU: fixed initialization of WGPURenderPassColorAttachment (#7371) fd75685fb Merge branch 'master' into docking 65dc67f63 Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369) 6b7358e9f InputText: adding clarifying note about ImGuiInputTextCallbackData::Buf. (#7363) fbf45ad14 ImDrawList: add PathFillConcave(), AddConcavePolyFilled(): amends (#760) 1ff90c52d ImDrawList: add PathFillConcave(), AddConcavePolyFilled() (#760) 04f40014a Docs: added a mini wiki index in main source files. c62366996 Added link to crawlable wiki 0573513d6 Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252) 77dff5a73 Backends: comments. 4e8c43f6b Backends: Win32: made it so that an appearing viewport showing up doesn't bring its parent viewport to front. (#7354) 44c7dfca0 Menus, Popup: Amend c3f8f4d for static analyzer warning ("condition always true"). (#7325) 1a487165b Merge branch 'master' into docking c3f8f4de2 Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. (#7325, #7287, #7063) 987794177 Popups, Menus: rename ImGuiPopupData::BackupNavWindow > RestoreNavWindow and minor tweaks. Should be functionally a no-op. 725f91922 Tables: fixed TableGetHoveredRow() with overlapping frozen rows (#7350, #6588, #6347, #6250) e46d1e69a Version 1.90.5 WIP c6aa05162 Merge branch 'master' into docking 277ae93c4 Version 1.90.4 f5be90523 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 13d91ff91 Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API from not working on windows with the ImGuiWindowFlags_NoNavInputs flag. 34965cf23 Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are properly handled by BeginPopupModal(). (#7340) 659fb41d0 Debug Tools: moved DebugStartItemPicker() to public API. Added to Demo->Tools menu. (#2673) 198c38f0b Demo: Custom Rendering: better demonstrate PathArcTo(), PathBezierQuadraticCurveTo(), PathBezierCubicCurveTo(), PathStroke(), PathFillConvex() functions. 3b6d924ac ProgressBar: Fixed a minor tesselation issue when rendering rounded progress bars. 2b662b1ab Merge branch 'master' into docking d3f1a7165 Popups: allow Child Popups to be resizable if not explicitly disabling. e78ce72eb Popups: Fixed resizable popup minimum size being too small. Standardized CalcWindowMinSize() logic a bit more. (#73290 014e0ac8c Menus, Popups: Fixed an issue where hovering a parent-menu upward would erroneously close the window. (#7325, #7287, #7063) c16043c1d Tables: Angled headers: improve clipping of text since multi-line labels makes clipping issues visible. (#6917) 405e54ebd Tables: Angled Headers: fixed support for multi-line labels. various padding/layout fixes. (#6917) 6655ab2e4 Tables: Angled Headers: fixed TableAngledHeadersRow() incorrect background fill drawn too low. Fixed row geometry with non-small values of CellPadding. (#6917) 9159cd7b4 Updated invalid documentation link (#7331) ccc5347e4 Fix typos (#7332) 8a14b71f2 Version 1.90.4 WIP b19a4c5f2 Backends: OSX: remove legacy clearing of io.NavInputs in ImGui_ImplOSX_UpdateGamepads(). (#7320) 8048b5249 Backends: GLFW: enable ImGuiBackendFlags_HasMouseHoveredViewport support with GLFW 3.3.x. (#7316) c66a1e7d5 Backends: Vulkan: ImGui_ImplVulkan_CreateWindow() amend merge to take account of PipelineRenderingCreateInfo change. (#7166, #6855, #5446, #5037) d79514c40 Merge branch 'master' into docking 5b6f03213 Version 1.90.3 f80e65a40 Backends:,Examples: Vulkan: moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. (#7308) 829f45df9 Backends: SDL2: removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84.. 3cc37170c Examples: GLFW+Metal: Add -I and -L paths for MacPorts. 891b81fc5 Backends: SDL3: Fixed gamepad. Added support for disconnection. Added support for multiple gamepads. Added ImGui_ImplSDL3_SetGamepadMode(). (#7180, #3884, #6559, #6890) 262e30e30 Backends: SDL2: rework new API as ImGui_ImplSDL2_SetGamepadMode(). (#3884, #6559, #6890, #7180) 9dfa2397d Internals: Fixed ImFileOpen not working before context is created. (#7314, #7315) d15e4100b Backends: SDL2: Amend new API, all support for multiple gamepads. (#3884, #6559, #6890) f966da1f8 Backends: SDL2: Gamepad handlng: amend bf1c96d. (#3884, #6559, #6890) bf1c96d4f Backends: SDL2: Handle gamepad disconnection + fixed increasing refcount. Added ImGui_ImplSDL2_SelectGamepadAuto()/ImGui_ImplSDL2_SelectGamepadExplicit(). (#3884, #6559, #6890) fd8d6dc5d Backends: SDL2,SDL3: tidying up. e0ba0d043 Backends: Vulkan: Fixes for building with pre Vulkan 1.3. Amend 8901931. (#7166) 11d73f03e Backends: Vulkan: Fix/amend 8901931 89019319d Backends: Vulkan: use PipelineRenderingCreateInfo for dynamic rendering (#7166, #6855, #5446, #5037) 1d6f0cea0 Backends: DX9: use RGBA texture to avoid conversion if supported 3af739a2d Menus, Popups: fixed menus and popups with child window flag erroneously not displaying a scrollbar when contents is over parent viewport size. (#7287, #7063) 2af01baff Backends: SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. 915c6393a Version 1.90.3 WIP 8490a262c Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. (amends) 71bcf350b Merge branch 'master' into docking 536090303 Version 1.90.2 7b5357d81 Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. 30ba3c347 Viewports: Fixed moving accross monitors when io.ConfigWindowsMoveFromTitleBarOnly is set. (#7299, #3071) 59c8db69e Demo: reorder Demo->Configuration section with docking/viewports section. 70aa717a8 Combo: Fixed not reusing windows optimally when used inside a popup stack. 5cdc4a2a4 Demo: use ImGui::MemAlloc/MemFree for consistency. (#7300) 76e09c4b0 ClosePopupsOverWindow(): amend to remove _ChildWindow test. 3a078466a Nav: ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. 7d67623d1 InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) fix accidental comment. a5e0e90c1 Nav: tweak RenderNavHighlight() syntax. ImGuiNavHighlightFlags_TypeThin -> ImGuiNavHighlightFlags_Compact. 1e8fc01dd InputText: Internal: ReloadUserBufXXX functions don't override revert value. (#2890) + rename a06dd7a27 OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. (#1497, #1533) f104967c6 Comments 82eeafc19 Merge branch 'master' into docking 06ce31274 InputText: Internal: added reload from user-buf feature. (#2890) f50ddc431 Fixed some typos. (#7282) 6172c22c5 CI: Update to `actions/checkout` `v4` from `v3`. (#7281) 96839b445 Nav: Improve handling of Alt key to toggle menu so that key ownership may be claimed on indiviudal left/right alt key without intefering with the other. 719475637 Shortcut: fixed single mod-key Shortcut from working e.g. Shortcut(ImGuiKey_LeftCtrl) f1960b60c Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (#7266) 8491cf36a Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed. 9176eedf2 Internals: SetShortcutRouting() move code so next commit is easier to read. Should be no-op. 150984210 Backends: OpenGL3: Shallow tweak of compile-time extensions detection. 1ce41f621 Backends: OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (#7253) 54ef4092a Backends: OSX: Fixed not submitting Monitors info when viewports are not enabled. (#7257) 81e0be856 Fixed strict-aliasing violation in FormatTextureIDForDebugDisplay(). (#7090, #7256) eb42e164d Merge branch 'master' into docking a201af735 Added SetNextItemShortcut() wip function. (#456) 4c2c09450 Nav: keyboard/gamepad activation feedback properly timed instead of frame buffer. (#456) 5b5e9bd0c Internals: Tweak shallow compaction as Clang complains about MS ABI signage of enums. 7c3fa7d04 Refactor: moved section in imgui_internal.h 9266c0d2d Backends: WebGPU: Avoid leaking pipeline layout. (#7245) 595eb8662 Changelog, comment, minor data compaction 6850194f6 CI: Fixes WGPU example build. 5fc0a361b Backends: WebGPU: added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (#7240) 831d42c1a Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes. (#7240) e3c7ff944 Examples: Emscripten+WebGPU: slightly refactor like other Emscripten compatible Desktop examples, as aiming to make this suppot desktop eventually. 15908502e Backends: Vulkan: Define NOMINMAX when VK_USE_PLATFORM_WIN32_KHR is defined. (#7250) 788747f86 Examples: Emscripten+WebGPU: Remove use of deprecated ObjectBase<...>::Release in favor of ::MoveToCHandle (#7251) 763100b38 Nav: Fixed pressing Escape while in a child window with _NavFlattened flag. (#7237) c7edb446c Shortcut(): always test ownership. 1844f903d Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut 5ddfbb80d Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 01b99a974 Backends: Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames. (#7236) 2f4833733 Examples: Vulkan: Rename compile-time defies for the examples to remove misleading IMGUI_ prefixes. cab7edd13 Merge branch 'master' into docking d7c2a0e38 Shortcut(): fixed 8323a06 adding _Repeat to all Shortcut() calls. 3b828d370 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 2) ff5f3aa38 Refactor: moving ItemAdd() into a section abote ItemSize(). No logic change (part 1) 1a48a6344 Enclosed a few more remaining sections in ifndef IMGUI_DISABLE_DEBUG_TOOLS for completeness. 33fabdf39 Scrollbar() doesn't forcefully mark itself as hovered when held. d431d8583 Internals: removed obsolete ImPool::GetSize() (last used by implot 0.10, changed in implot 0.11) f0d1f61fa Internals: commented out long-time obsoleted FocusableItemRegister()/FocusableItemUnregister() documentaton-only leftovers. + 095665977 Nav: marking NavId as hovered in ButtonBehavior() doesn't check for ActiveId. d10641b04 Nav: keyboard/gamepad activation mark widgets as held to give better visual feedback. 03417cc77 Backends: WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (#7232) 5fdcdf708 Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. (#456) 80d5cb1ab Comments around ImGuiInputFlags. 80c83a427 Docking: added ImGuiDockNodeFlags_DockedWindowsInFocusRoute to configure a dock node to automatically set ParentWindowForFocusRoute on its docked windows. (#6798, #2637, #456) cceff4684 Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() (#6798, #2637, #456) 1cc0eb4d3 Internals: Rename NavFocusScopePath to NavFocusRoute + fixed a static analyzer warning. 69b64e2b7 Internals: Docking: revert 32a3c61 in favor of user explicitely calling SetWindowParentWindowForFocusRoute(). (#6798) a27f22f0e Merge branch 'master' into docking 46e5f44ec Shortcut()/SetShortcutRouting(): use mixed current window focus scope + ParentWindowForFocusRoute. (#6798, #2637, #456) e0c8c80ad Shortcut()/SetShortcutRouting(): focus route testing now use ParentWindowForFocusRoute. Automatically set on child-window, manually configurable otherwise. (#6798, #2637, #456) 4b20a0217 Internals: add window to FocusScopeStack. (#6798) 2156db7a0 Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). (#6798, #2637, #456) dd0efdc63 Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope. (#7226) 8a3dfda8d Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'. 6228c2e1e Backends: Vulkan: moved ImGui_ImplVulkanH_DestroyFrameRenderBuffers/ImGui_ImplVulkanH_DestroyWindowRenderBuffers as they are always used in a state where backend data is available. 32a3c61d0 Internals: Shortcut() follow docking chain (until we formalize a more general focus scope stack). (#456) 70bb6d1e7 Backends: Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size. (#3957) 82df7c8bf Backends: Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (#7189, #4238) 29809d722 Version 1.90.2 WIP db049db86 Docs: tweak, fixed misplaced changelog entry. (#7084) 2dc85e6e4 Merge branch 'master' into docking d6cb3c923 Version 1.90.1 6470e2279 Debug Tools: DebugRenderKeyboardPreview() scales better. fdf8d02be Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. (#2673) 788bb58b6 Metrics: Tweak, reorganize tools menu. a5dec4286 Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only. (#5855) a3eea8a75 Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" and variants, fixing regression on distros missing a symlink. (#6983) cf0202356 Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. 69bf3291d Internals, Inputs: Fix for ImGuiInputFlags_RepeatUntilXXX logic when #ifdef IMGUI_DISABLE_OBSOLETE_KEYIO is not set. ebcfcd8da Merge branch 'master' into docking 8deb1007c Backends: OSX: Fixed IME position in multi-monitor/multi-viewports setups. (#7028) a683033e4 Backends: OSX: Fixed monitor and window position by correctly transforming Y origin on multi-monitor setups. (#7028, #7101, #6009, #6432) af00b182e Examples: SDL3: Minor fixes following changes to API (SDL_WindowFlags -> Uint32). fc2e532f9 Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. (#456, #2637) 8323a06e6 Inputs: passing ImGuiInputFlags_RepeatXXX options automatically adds ImGuiInputFlags_Repeat. 58261dbe9 Internals: alter ImGuiInputFlags values to leave room + indent. f1ae47c4b Docs: update links to Proggy Fonts. (#7211) 7f9533b84 ColorPicker: Fixed saturation/value cursor radius not scaling properly. 27e83c295 Add comment about how ImGuiKey values are named after US keyboard keys. (#7205) 278cf1a7b Readme: updated binaries. (#7193) edeb8ee3a More compact issue_template.yml c6716f5e9 Fixed typo (#7197) a1b06823f Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground is specified. (#1710, #7194) 0461ade24 Reworked issue template (amends) (#5927, #5915) c528b688c Reworked issue template. (#5927, #5915) 26eef4df8 Update issue_template.md 7938550d5 Comments and some extra line-wrapping in demo (#3193) 4758f7467 imgui_freetype: fix nullptr to ImTextureID cast (#7192) e3d7cd665 Merge branch 'master' into docking 6f10cef2a Backends: Vulkan: moved structure declarations. 33d18c580 Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL. (#7175) 0ea99132c Backends: Vulkan: Stop creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT as we don't reset them. 4778560e6 Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous validation layer. (#7189, #4238) e8dd47eff Backends: WebGPU: Fixing an issue when opening a popup in the wgpu backend (#7191) 718fa0eec Happy new year! 2523c197b Fixed title bar background alpha being used to render viewport-owned windows. (#7184, #7181) 240ab5890 Backends: GLFW, Input: Use Unicode version of WndProc for get correct input for text in utf-8 code page. (#7174) 4a2426449 Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. (#6810, #7096) 20e1caec8 Backends: DX12: Changed swapchain scaling mode to `DXGI_SCALING_NONE`. (#7152, #7153) f039e69b9 Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. 4aa81116a Merge branch 'master' into docking 8340a30d2 Debug: move debug assertion in post-clip code to reduce overhead. (#4796 and more). 1e1013085 Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. 036a6c875 ColorEdit4: Further tweaks for very small sizes. (#7120, #7121) 0bd648972 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: fixed multi-components width in tight space (#7120, #7121) 0000739c0 Internals: Fixed function name typo. 33d426842 Backends: Vulkan: ImGui_ImplVulkan_CreateFontsTexture() calls vkQueueWaitIdle() instead of vkDeviceWaitIdle(). (#7148, #6943, #6715, #6327, #3743, #4618) 3cb805489 Backends: GLFW, Emscripten: fixes for canvas resizing, amends. (#6751) 22a7d241f Backends: GLFW, Emscripten: fixes for canvas resizing. (#6751) b4c5a83cf Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. (#2625, #7143) 70f2aaff4 Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent. 55073aa7a Examples; SDL: added missing return values checks from SDL_CreateWindow() calls. (#7147) 8764a1b7c Backends: Vulkan: free FontCommandBuffer explicitely (not actually required in normal code path, unless ImGui_ImplVulkan_DestroyDeviceObjects is declared directly). (#7104) 089ed3032 Replace usages of ImGuiKey_KeyPadEnter with ImGuiKey_KeypadEnter. (#7143) e265610a0 Fixes for MSVC code analyzer. f59b54c6f Nav: Activation can also be performed with Keypad Enter. (#5606) 0d582dabf Fixed warning (amend 54c1bde) 8add6bcb9 Merge remote-tracking branch 'origin/master' into docking 6cfe3ddf5 InputTextMultiline: Tabbing through a multi-line text editor using ImGuiInputTextFlags_AllowTabInput doesn't activate it. (#3092, #5759, #787) 54c1bdece Internals: removed unused ImGuiItemStatusFlags_FocusedByTabbing. (#4449) 4afffa36e InputTextMultiline: Fixed Tab character input not repeating f6836ff37 Misc: Rework debug display of texture id in Metrics window (amend) (#7090) 07dbd46dd Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) 34646627a ColorEdit4: improve components width computation to better distribute the error (#7120) (#7123) 86512eac0 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. (#7120, #7121) 03298fe87 Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y). (#7106) 69f524ba9 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Added when component <= 0. (#7095) 9d8de4531 Image(): comment and minor refactor to resurface the fact that a border size may be added. (#2118) 5366bd09b Scrolling: internal scrolling value is rounded instead of truncated. (#6677) c58d2c89c Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. (#7084) 1fade3515 DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: Fixed incorrect pushes into ItemWidth stack when number of components is 1. [#7095] 58ca5f642 Shortcut(): clearer early out in SetShortcutRouting() -> CalcRoutingScore() path. d72e1563d Removed CalcListClipping() marked obsolete in 1.86. (#3841) + comments 9a2985611 Backend: Android: Remove Redundant Check (#7093) 0b77980ca Moved Tables API related declarations to their own section in imgui.h aaf157cfd Commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. Commented out legacy ImGuiColumnsFlags_XXX symbols redirecting to ImGuiOldColumnsFlags_XXX, obsoleted in 1.80. 96b5b1724 Merge branch 'master' into docking 1fd5ff715 Avoid C++26 removed deprecated arithmetic conversion on enumerations. (#7088, #7089. #2983, #3040) 52886872f Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) 5768de79e InputText, ColorEdit, ColorPicker: better support for undocumented ImGuiItemFlags_ReadOnly flag. (#7079, #211) b112d73ed Menus: amend to clarify/fix static analyzer warning. (#6671, #6926) 2ee40d3cf Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) b4b864e40 Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs vkDestroyCommandPool(). (#7075) d2b016761 Fixed link error when using IMGUI_DISABLE_DEBUG_TOOLS 7965494ff Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor. c1a3c7f44 Fixed Clang zealous warnings c6ec69c7c Using nullptr in remaining examples/backends locations. (#6313, #7071, #4537) 888834c63 Backends: Android: Fixed build breaking typo. (#7060) 077e4db77 Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. f6253b87d Merge branch 'master' into docking 6f171a066 Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when navigation is enabled. (#6997) e07663d9a Docking: transform `ImGuiContext* ctx = GImGui` to `ImGuiContext& g = *GImGui` for consistency (#5856) 1f3090a48 Backends: SDL3: Fix indent (#7062) 86891b098 Backends: Android: ImGui_ImplAndroid_HandleInputEvent() takes a const AInputEvent* (#7060) f37f6f67f Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport minus padding. (#7063) bce4db00b Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect. (#7049, #4281, #3272) 65a10410e Docs: Add suggestion to turn of char8_t behavior for C++20 (#7025) 61b819794 Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds. 3733b5064 Backends: SDL3: Fixed unused variable warning on master on some targets. (#7000) c5c1c4134 Backends: OpenGL3: imgui_impl_opengl3_loader.h: change #define ARRAY_SIZE to GL3W_ARRAY_SIZE to avoid external conflicts (#7017, #7018) 7bb0a525c Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully. (#7016, #3466, #6846) 3d083dbe1 Version 1.90.1 WIP ce0d0ac82 Merge branch 'master' into docking b81bd7ed9 Version 1.90.0 6695006be Backends: Vulkan: use specified ColorAttachmentFormat when creating a secondary window when enabling UseDynamicRendering. (#6999, #5446, #5037) 623bff23c Windows: WindowMinSize not applied on AlwaysAutoResize window. (amend e2035a5) f298491a8 Docs: amend/tweak details about using io.WantCaptureMouse. (#7012) 5de1312e1 SplitterBehavior: tweak to not assert due to floating point precision. afadf74a5 BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names. 46843b683 Fonts: minor/shallow amends (#6925) ade4d0e08 Fonts: added support for RasterizerDensity to FreeType based atlas generator. (#6925) ed29ff08b Fonts: added support for RasterizerDensity in built-in atlas generator. (#6925) abfb9269b Fonts: added RasterizerDensity to ImFontConfig. (#6925) 0941adc93 Backends: SDL3: Updates for recent API changes. (#7000) (w/ multi-viewports version) add915bdc Backends: SDL3: Updates for recent API changes. (#7000) 4ad5817aa Update backends/language lists 75c46a393 Demo: Partly fix resizing constraint demo. (#6210, #5627) fe6544622 SetNextWindowSizeConstraints() clarified parameters, fixed comments. (#1139, #3186, #3270) 454f36d2a Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE. 9d950444a Backends: Vulkan: Fixes for VK_NO_PROTOTYPES (docking merge + reorder docking only bits) 44dbad64d Backends: Vulkan: Fixes for VK_NO_PROTOTYPES. 450f1d7e7 Merge branch 'master' into docking 79a9e2fdf Backends: Vulkan: (Breaking) full font upload is performed by ImGui_ImplVulkan_CreateFontsTexture(), no need for user code to create or provide a command-buffer. Removed ImGui_ImplVulkan_DestroyFontUploadObjects(). (#6943, #6715, #6327, #3743, #4618) 6e7b43b6c Backends: Vulkan: Added ImGui_ImplVulkan_DestroyFontsTexture(), made ImGui_ImplVulkan_CreateFontsTexture() destroy previous one. (#6943, #6715, #6327, #3743, #4618) d0da79c57 Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. (#4921) ab522dd18 Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. (#4537) 0f50b52da Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load "libGL.so" instead of "libGL.so.1". (#6983) 5170a9d6d Tables: Internals: renamed TableDrawContextMenu() to TableDrawDefaultContextMenu() for clarify. fea52e29a Tables: added flags to TableDrawContextMenu() in order to display selected sections + added internal table->DisableDefaultContextMenu = true way to submit your own contents. 37ea320b9 Merge branch 'master' into docking 0d3b468cb BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). (#1666, #1395, #1496, #1710) + Demo 44345c210 Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle. fa4c49b4a BeginChild(): resizing is only clamped on axis where there's no scrollbar. Added an extra ResizeX in Demo->Simple Layout. cdbc21a19 BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). (#1666, #1496, #1395, #1710, #462, #503, #263) ab47efd9a Bits / comments 561af15d6 Internal: Added owner aware variant of IsMouseDoubleClicked() for consistency. 376035fd0 Nav: fixed programmatic nav calls (e.g. SetKeyboardFocusHere() from storing io.KeyMods) cfc71ab7c Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned (#6969) 208b8242b Docking: Settings: Fix for loss of settings caused by 9298e31 yesterday. (#6982) 1ab63d925 Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 4cde40dbe Undid some of the changes done by c95fbb4 because they are not compatible with docking code. 9298e310b Merge branch 'master' into docking (note: won't build as-is, see next commit) c0bc43ccf Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument. f1d1a8d32 Windows: use relative mouse movement for border resize when the border geometry has moved. (#1710) 923535240 BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. (#1710) 34a0bc456 BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. (#462, (toward #1666, #1496, #1395, #1710) 7713c2925 BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666, #1496, #1395, #1710) 04e9a2fac Backends: SDL3: rename SDL_EVENT_DISPLAY (#6974) 88fec0971 ColorPicker4(): Fixed ImGuiColorEditFlags_NoTooltip when ImGuiColorEditFlags_NoSidePreview is also set. (#6957) 313676d20 Settings: omit outputing Collapsed=0 in .ini file. Changelog + docs tweaks 8ee85137d BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window. 4e4042bc3 Windows: tidying up skipitems logic at end of Begin(), normally should be no meaningful side-effect. bc3c6e74e Windows: fixed double-clicked border from showing highlighted at the new position. e2035a514 Windows: shared code for CalcWindowMinSize(). c95fbb446 Windows: Double-clicking bottom or right window border auto-resize on a singles axis. ade2acfd1 Inputs: Added IsKeyChordPressed() public helper function. 2a6d7b1ea Merge branch 'master' into docking 1b9cb52d7 BeginChild(): rename parameters to reduce diff of upcoming patches. f8dc03d70 Windows: Can also auto-resize by double-clicking lower-left resize grip (not only lower-right one). 56f7e853b Demo: expose more Combo flags + misc tidying up. 9a5da2355 Changelog formatting d6d00b4fc Moved BeginChild() above BeginChildEx() as it is more readable. 99913b505 Internals: added IsKeyChordPressed() for consistency. a8bdbfddf Tables: Fixed top-most and left-most outer border overlapping inner clip-rect when scrolling. (#6765) 8db02ef8d Tables: Fixed an issue with ScrollX enabled where an extraneous draw command would be created. 51d1a72e9 Docking: Revised undocking logic to reduce accidental whole-node undocking: 4521dec85 Docking: Fixed DockNodeBeginAmendTabBar() asserting on first call since ef8ff1b 947255c3d Tooltips: made it possible to use ImGuiHoveredFlags_ForTooltip + a ImGuiHoveredFlags_DelayXXXX override. (#1485) 0b8c6b9bc Internals: removed seemingly unused AutoFitChildAxises. 12a3c77c2 Demo: Minor tweak to angled headers demo. 83c433682 Tables: fixed angled headers with frozen columns. f96c5443b Tables: fixed angled headers with frozen columns. f7fc18640 Merge branch 'master' into docking 32228d8ad Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. (#2957) 9f851ebfe Tables: added ImGuiTableFlags_HighlightHoveredColumn. be1311cfc Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame. 08606714a Fixed incorrect assert in FocusTopMostWindowUnderOne() preventing child+popup from being used. (#6915, #718) 5053d79a2 Tables: Internal: rework so stacked headers height may be used. b9ebb8e06 Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column. feddcf303 Combo: amends for ImGuiComboFlags_WidthFitPreview. (#6881) 112d8fc41 Combo: added ImGuiComboFlags_WidthFitPreview. (#6881) 001f102f3 IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. (#6891, #4921) 7bbd75868 Backends: Win32: revert oops chunk. b0758c86d Backends: Added support for extra ImGuiKey values: F13 to F24 function keys. (#6891, #4921) 73346e434 IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. (#6891, #4921) 0312a29e4 ImageButton(): clarify purpose of size. (#6901, #5533, #4471, #2464, #1390). 1107bffe8 Popups: clarified meaning of 'p_open != NULL' in BeginPopupModal() + set back user value to false when popup is closed in ways other than clicking the close button. (#6900) 72ebd9156 Merge branch 'master' into docking 2c07d581d TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. (#3151, #3565, #2451, #2438) 085ed7bfb Drag and Drop: Rework drop target highlight. (#4281, #3272) 0dd756bce Moved GetCursorScreenPos/SetCursorScreenPos on top of its section. a63e2f0a3 Drag and Drop: Fixed submitting a tooltip from drop target location. Added demo. 64b1aeebf Backends: OpenGL3: rename gl3w's loader symbols to allow LTO compilation with another copy of gl3w. (#6875, #6668, #4445) 28b237f94 Separator(): Altered end-points to use more standard boundaries. (#205, #4787, #1643, #759) 330d76347 Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. (#759) 9064dbd40 Backends: DX9: Fixed incorrect assert triggering on reopening session with minimized windows. (#3424) a61438740 Debug Tools: Metrics: Added "Show groups rectangles" in tools. d27b4ad36 Backends: GLFW: support for case where secondary viewport WndProc is not the same as main viewport one. (#6889) 17bfafda5 Backends: GLFW: moved WndProc hook to bottom of file + rename a field. (#6889) ff534b0d0 Docking: Fixed a bug where ClassId compare tests (when using SetNextWindowClass) on success would prevent further filter from running. (#6882) f8aed6499 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) 701a047ac Fonts: Fix clang compiling warning & error with freetype + lunasvg (#6873, #6842, #6591) 03e2a7f58 Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) c21278eea Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). (#4631) b7c250925 Merge branch 'master' into docking 2f431a948 IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics. f1519efb1 BeginGroup(): fix/amend 9ece0bd. 456aa3bc0 Menus: Fixed a bug where activating an item in a child-menu and dragging mouse over the parent-menu would erroneously close the child-menu. (#6869) 9ece0bdc0 BeginGroup(): Fixed a bug pushing line lower extent too far down when called after a call to SameLine() followed by manual cursor manipulation. 8175a4788 Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). (#4631) 204ae8a40 Internals: added ImRect::ContainsWithPad() bb2fb7464 Merge branch 'master' into docking 94da5842e Renamed ImFloor() to ImTrunc(). Renamed ImFloorSigned() to ImFloor(). (#6861) c41868531 Fixed window inner clipping rectangle off by one when window is located on a monitor with negative coordinates. (#6861, #2884) e5ca5351d TabBar: Fixed position of unsaved document marker (ImGuiTabItemFlags_UnsavedDocument) which was accidentally offset in 1.89.9. (#6862) 72ae6f520 Fixed MousePosPrev with has never been valid outside of NewFrame(). 12ee2dd78 Backends: Win32: Synthesize key-down event on key-up for VK_SNAPSHOT / ImGuiKey_PrintScreen as Windows doesn't emit it. (#6859) d4869207e Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. (#3466, #6846) f4790f6f6 BeginItemTooltip: Rename flag in comment (#6853) daf49e9d8 Made ImFileOpen reuse a memory buffer so .ini saving doesn't allocate once every time. Added commented out MemAlloc/MemFree debug log. 2c0007731 Docking: fixed calling DockContextCalcDropPosForDocking() with window in node without passing its node. 61acb34e3 Docking: Fixed an issue leading to incorrect restoration of selected tab in dock nodes that don't carry the currently focused window. (#2304) 3ce6b06fe Merge branch 'master' into docking d6360c1ba Fonts, imgui_freetype: Fixed a warning and leak in IMGUI_ENABLE_FREETYPE_LUNASVG support. (#6842, #6591) 6c022f9bf IO, Inputs: rename SetMousePos() to TeleportMousePos(). (#6837, #228) ff36fe365 IO, Inputs: setting io.WantSetMousePos ignores incoming MousePos events. (#6837, #228) ef8ff1b5d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) 64b1e448d TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. (#6820, #4859, #5022, #5239) ac3bc73c1 Docking: Fixed node tab-bar not having a filled value for tab-bar which is required for claiming moue wheel ownership in (unenabled) ImGuiTabBarFlags_FittingPolicyScroll mode. afd0d3fca Docking: made ImGuiDockNodeFlags_NoUndocking public. (#2999, #6823, #6780, #3492) 72d760ba0 Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit. f693c3d80 Docking: made "ImGuiDockNodeFlags_NoDocking" a combination of all others ImGuiDockNodeFlags_NoDockingXXX flags. (#2999, #6823, #6780, #3492) 7e246a7bb Merge branch 'master' into docking 6addf28c4 Fonts: Ensure calling AddFontXXX function doesn't invalidates ImFont's ConfigData pointers prior to building again. (#6825) 161281311 Docking: Internals: added ImGuiDockNodeFlags_NoUndocking. (#2999, #6823, #6780) 14f8b76c1 Docking: Comments. Removed misleading shared/local identicators. (#6823, #2999) b101cf46b ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis. 8a2cd8109 TypingSelect: always enable nav highlight. 223b19f11 Fixed warning when builidng with IMGUI_DISABLE_DEBUG_TOOLS. 779568bb3 TypingSelect: tidy up some more + split ino functions to make reuse simpler. 661a70fc7 TypingSelect: fast switch between characters in + debug, internal renames. 32171a8b0 Fonts: Better assert during load when passing truncated font data or wrong data size. (#6822) c32db3c72 Tables: Fixed an edge-case when no columns are visible + table scrollbar is visible + user code is always testing return value of TableSetColumnIndex() to coarse clip. c86ce7096 Internal: Nav,MultiSelect: import ImGuiSelectionUserData, SetNextItemSelectionUserData() from MultiSelect. Track NavLastValidSelectionUserData as a convenience. f336e639e TypingSelect: rework GetTypingSelectRequest(), provide TypingSelectFindResult(). 9714594c3 Tooltips: made using SetItemTooltip()/IsItemHovered(ImGuiHoveredFlags_ForTooltip) defaults to activate tooltips on disabled items.. (#1485) 6eb2681c0 Internals: InitOrLoadWindowSettings() clear Size again for better data nuking in tests. Debug Log: added ImGuiDebugLogFlags_OutputToTestEngine flag. bed492da7 Tables: amend support for auto-resize. (#6807) 556a1397a Tables: Remove comment referencing removed field SortSign (#6807) 3aceb6105 Tables: Request user to submit contents when outer host-window is requesting auto-resize. (#6510) da21b7431 Tables: Fixed subtle drawing overlap between borders in some situations. (#2957, #6765) 5a483c2ff Tables: Fixed top-most outer border being drawn with both TableBorderLight and TableBorderStrong in some situations, causing the earlier to be visible underneath when alpha is not 1.0f. a34071876 Tables: Fixed bottom-most and right-most outer border offset by one. (#6765, #3752) 357f752be Docs: add more links to the top of every examples and backends files. b9ab6e201 Nav: Tabbing always enable nav highlight when ImGuiConfigFlags_NavEnableKeyboard is set. (#6802, #3092, #5759, #787) 0e1ce76ea InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. (#6802, #3092, #5759, #787) bd63a9f05 Fonts: 'float size_pixels' passed to AddFontXXX() functions is now rounded to lowest integer. (#3164, #3309, #6800) 72dbe45ad Merge branch 'master' into docking 0962c9fb7 TypingSelect: Added first version of GetTypingSelectRequest() API. 781203940 ImVector: Added find_index() helper. 44a6b493e Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded() becd75676 Commented out obsolete redirecting function: GetWindowContentRegionWidth(). 727c46206 Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments. c9d3c29aa Backend: Win32: support keyboard codepage conversion for when compiling in MBCS mode and creating a non-Unicode window. (#6785, #6782, #5725) e3d9b875c ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). (#2743) fa2e5710a MenuBar: Fixed an issue where layouting an item in the menu-bar would erroneously egister contents size. (#6789) 56a7b8b72 Backends: GLFW: Clear emscripten's MouseWheel callback before shutdown. (#6790, #6096, #4019) d8ef864b0 InputTextMultiline: Fixed a crash pressing Down on last empty line of a multiline buffer. (#6783, #6000) cf1c4a0cb BeginListBox(): fixed not consuming SetNextWindowXXX data when returning false. fb9b00686 Version 1.90 WIP f24387fa2 Version 1.89.9 (fixed changelog header) c4dc8fd10 Docs: Update FONTS.md (#6781, #6632, #6339, #5763, #5330, #2234, #2042, #1259, #951, #220) c6e0284ac Fixed minor warning. 1d8e48c16 Using range-based for where it makes sense. (#4537) a1b60fc1f Merge branch 'master' into docking fef338915 Version 1.89.9 7b5fb3329 Tables: Internals: renamed CellPaddingY to RowCellPaddingY. bdc4dfebf Tables: Amend support for cross-cell SameLine() for first column. Amend 9a93fb5 + 8f5ce73. 9a93fb571 Tables: Fixed support for cross-cell SameLine() by preserving Line Y1 position. Amend 8f5ce73. e8a5c9e1b Tables: Made it possible to change style.CellPadding.y between rows. Added demo. 3816d478d ImDrawList: small debug-mode optimization when calling AddRect() without rounding + Selectable: small debug-mode optimization. 8c497793f Demo: Tweak table sorting demo code. 303dc091b Revert "IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456)" b8f93a8fe IO: ImGuiMod_Shortcut (Ctrl/Cmd depending on platform) is reflected in io.KeyMods. (#5923, #456) a06607405 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) bdd9b96fa Demo: Reorganized "Examples" menu. Tweak Property Editor. 300464a48 Docking: when io.ConfigDockingWithShift is enabled, staying stationary while moving a window displays an help tooltip to increase affordance. (#6709, #4643) 7d6e83efc Docking: Fixed non-root dockspace not having their background rendered properly. 08b3a1a34 ImDrawList: Automatically calling ChannelsMerge() if not done after a split. f93d0befa Slider: fixed support for ImGuiItemFlags_ReadOnly/ImGuiSliderFlags_ReadOnly although it is technically unused/undocumented. (#6758) d6e9fad60 Tables: Fix typo in TableGetSortSpecs comment + amend comment. (#6755) 82d177ccb Using range-based for where it makes sense. (#4537) 762ec445e Docking: Fixed bad bug, dock node host wouldn't merge background. (#6753, #6716) 33ea1e8b7 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 475453668 Backends: SDL2/SDL3: Fixed bad merge in docking branch (#6735) f617fe789 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841) 200053771 Clipper: Added IncludeIndex() helper to include a single item. (#6424, #3841) 4a7810e99 Update README.md 981abb461 Examples: Emscripten+webgpu: Fixed WGPUInstance creation process + use preferred framebuffer format. (#6640, #6748) 61d35972e CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. Amend for Docking. (#6749) 676497fe0 Merge branch 'master' into docking 4a8142449 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) b41811a68 CollapseButton: handle clipping better + align circle like in docking branch. 040e818d7 Fix typo in SameLine comment (#6745) 162f8e01a Backends: SDL3: fixed typo in 1e17d59 (#6735) ba1fa904a IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278) a1a7a1bc0 InputFloat, SliderFloat, DragFloat: always turn both '.' and ',' into the current decimal point character. (#6719, #2278) a6857ede0 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702) c06c79624 TreeNode: added note about ImGuiTreeNodeFlags_Bullet. 116130138 Backends: amend "Missing features" sections for multi-viewports support. 1e17d5996 Backends: SDL2,SDL3: added ImGui_ImplSDL2_InitForOther() / ImGui_ImplSDL3_InitForOther(). 983b95bc8 Demo: tweak explanation about static keyword. (#6718) d2c7cbcbf Misc: Made multiple calls to Render() during the same frame early out faster. ac64b6563 Render: draw dimmed background earlier to match docking code. (#6716) f422e7826 ImDrawData: Fixed an issue where TotalVtxCount/TotalIdxCount does not match the sum of individual ImDrawList's buffer sizes. (#6716) 8f5ce7314 Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell. 1362fc0c5 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 63b6300c3 Merge branch 'master' into docking bc3c0ce77 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131) edebb90a9 Demo: amend/fix for MinGW 4d6fbaff1 Demo: define standard PRI names we use (if missing) instead of defininig IM_PRId64, IM_PRIu64. 226923fa7 Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca). 2b1fc6f76 Demo: Demonstrate out-of-order rendering using ImDrawListSplitter. cf3726bcb Internals: rename bg/fg drawlist holders in structs to reduce confusion. 52587c28d ImDrawList: Fixed OOB access in _CalcCircleAutoSegmentCount when passing excessively large radius to AddCircle(). (#6657, #5317) f8c768760 Typo fix: _NoHostExtenY -> _NoHostExtendY (#6687) c00e68102 Docs: update CONTRIBUTING.md b7a7d673b Fixed an integer overflow and div-by-zero in SliderInt() when v_max is INT_MAX (#6675, #6679) d6d94d90b Version 1.89.9 WIP f8704cd08 Merge branch 'master' into docking f7eea6387 Version v1.89.8 30594c37d Merge branch 'master' into docking ab490dc7b Fonts: Amends for support for OpenType SVG fonts using lunasvg (#6591, #6607) 2ad8c60ab Fonts: Added support for OpenType SVG fonts using lunasvg (#6591, #6607) 19ae142bd Mark alternative ImColor constructors as constexpr, second attempt (#6656) dc2b0a282 Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird). 88a330ebe Revert "Mark alternative ImColor constructors as constexpr (#6656)" fa2f1bfbb Examples: Vulkan: Fixed Vulkan descriptor pools. (#6642) 7c5b0e829 Mark alternative ImColor constructors as constexpr (#6656) eefc9035f Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3. c87b9fdb1 Docs update. Improved Fonts troubleshooting section. 556ce9f54 imgui_stdlib: Fix warning (#6658) 79d6f4e21 Misc: Avoid stb_textedit.h reincluding string.h while in a namespace. (#6653, #4791) f1781c20a Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) f8f805f04 Merge branch 'master' into docking 1109de382 Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f. (#6622, #1485) db66e33e9 Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619) 2bc5d17ac Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619) e5977f05d Backends: GLFW: revert support for GLFW_CURSOR_DISABLED, let user use ImGuiConfigFlags_NoMouse. (#5625, #6609) d342ec10c Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 52125a54a Tables: added TableGetHoveredRow() in imgui_internal.h. (#6250, #6347, #6588, #3740) 77eba4d0d CI: resume using latest Emscripten 3dc3aef8a Backends: WebGPU: fix webgpu changes for Dawn. (#6602, #6188) 0e8eb8c48 Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier. 863ac31f0 Doc: various tweaks + tweak imconfig comments. 07d1709ca Doc: removed "generic" docking/viewport branch section of changelog since this is misleading. Will add formally when we reelase. (#2109, #1542) 33e13c85e Backends: Made all backends sources files support global IMGUI_DISABLE. (#6601) 023e59a5f ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 6888e6cdf ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878) 0110f4c8c Merge branch 'master' into docking dbeeeae59 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878) 1a9ddd239 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) c649aca20 ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860) cc4c37dba Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection). 51b348095 Docking, Style: resizing separators use same colors as window borders. (#2522) b7cdb5a31 Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f4942bca3 Docking: follow to 27c735e to fix rendering of docked-window scrollbar above outer border. (#2522) 27c735e3e Scrollbar: layout needs to take account of window border size, so a border size will slightly reduce scrollbar size. (#2522) f6feddd1e Merge branch 'master' into docking b79751eba Docking: Added DockingSeparatorSize to style: amends (#3481, #4721, #2522) a5aff5fd3 Docking: Added DockingSeparatorSize to style (#3481, #4721, #2522) 5ce636b0b Tweak to accomodate for build* directories anywhere. 140726d23 Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) b32ef809c InputText: Fixed a case where deactivation frame would write to underlying buffer or call CallbackResize although unnecessary, in a frame where the return value was false. 334929637 InputText: Tweak ImGuiInputTextFlags_EscapeClearsAll handling so decision is taken on input buffer + Showcase a few more InputText() flags. (#5688, #2620) 6aa408c6a IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921) 9a15730c2 Demo: better showcase use of SetNextItemAllowOverlap(). (#6574, #6512, #3909, #517) 3fe431931 Version 1.89.8 WIP 8566fec66 Backends: SDL3: Changing SDL_WINDOW_SKIP_TASKBAR to SDL_WINDOW_UTILITY for SDL3 (#6573) dc3e531ff Merge branch 'master' into docking d4ddc46e7 InputText: Fixed a crash on deactivating a ReadOnly buffer. (#6570, #6292, #4714) 40aac5875 Changelog amends ac8573884 Backends: Vulkan: Amends for docking branch. (#5446, #5037) 677c7b225 Merge branch 'master' into docking cb9015e25 Version 1.89.7 121072cfe Backends: Vulkan: Amend for support for dynamic_rendering (#5446, #5037) 7812e836e Backends: Vulkan: Support for dynamic_rendering (#5446, #5037) dcdb14571 Docs: Fix outdated link in freetype docs (#6568) 1029f57b8 Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 64172685d InputText: ImGuiInputTextCallbackData::InsertChars() accept (NULL,NULL) range, in order to conform to common idioms. (#6565, #6566, #3615) 655aae591 Comments + docs: tidying up todo list + demo tweak for tooltips. a02315e1c Combo: Made simple/legacy Combo() function not returns true when picking already selected item. (#1182) a88e5be7f Merge branch 'master' into docking 6137443d2 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517) 4dee919bc (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd(). 10c7709f3 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 8439a7364 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517) a9a5cbf43 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 07e24b405 ButtonBehavior: pull ImGuiButtonFlags_Repeat from ImGuiItemFlags_ButtonRepeat, matching ItemHoverable() logic. So more widgets can take advantage of Repeat logic. 51f564eea (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517) 06f5b4613 Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. (#6512, #3909, #517) b03a4993b Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 836aff346 Drag and Drop: Amend ItemHoverable() logic for item with no identifier. d5d4d709c Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable(). a2f658117 Selectable: Fixed bad manual cherry-pick/merge (fixes 3ec128c) 3ec128c5f Selectable, TreeNode: When using ImGuiSelectableFlags_AllowOverlap/ImGuiTreeNodeFlags_AllowOverlap and holding item held, overlapping widgets won't appear as hovered. (#6512, #3909) cada78917 Tables: removed misleading, seemingy useless use of ImGuiButtonFlags_AllowtemOverlap in TableUpdateBorders(). (#6512, #3909) 0a53b4585 CollapsingHeader/TreeNode: Fixed text padding when using _Framed+_Leaf flags. (#6549) 6b0111405 Merge branch 'master' into docking 057fcae30 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 4. 35b41949f Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 3. 099e8533e Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 2. 66c09fc05 Docking+Viewports: Fixed extraneous viewport+platform-window recreation. Part 1. 7d81a166f Docking: Fixed one-frame flickering on reappearing windows binding to a dock node where a later-submitted window was already bound. 6b2e03c5b GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. e4aeef4b9 Viewports: Closing a viewport via OS/platform means (e.g. OS close button or task-bar menu), mark all windows in this viewport as closed. 94c46d748 InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. (#5688, #2620) cb5542bce Backends: OpenGL3: Fixed erroneous use glGetIntegerv(GL_CONTEXT_PROFILE_MASK) on contexts lower than 3.2. (#6539, #6333) 959a9c79b TreeNode: Added support for ImGuiTreeNodeFlags_UpsideDownArrow in frameless tree nodes (#6517, #6538) e0583975c Demo: Fix typo (amusingly had no side effect). 1450d23b6 Merge branch 'master' into docking 9214c28aa IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. e7a4327eb IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. b60acfa87 Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 0f72652c2 IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) b3b8cbd00 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485) d4b94bd65 (Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. (#1485) f09ef23ae IsItemHovered, Tooltips: Tweak default delay again. (#1485) d96bbf0aa TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. (#6517) 194916135 Internals: renamed HoverDelay fields. 15d74bad1 Internals: Tooltips: renamed internal flags (expecting to expose later when we publish priority stuff). b9db5c566 Backends: Win32: Added support for updating ParentViewportID after viewport creation. 89d3dabf2 Modals: In the case of nested modal, made sure that focused or appearing windows are moved below the lowest blocking modal (rather than the highest one). (#4317) eec344cc1 Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). (#1485) 6cabad6e7 Encode version string in binary to facilitate identification when demo/tools are striped + amend About window. 534340cd8 Tooltips: Tweak default offset for non-drag and drop tooltips. e95d66faa Clipper: Rework inner logic to allow functioning with a zero-clear constructor. (#5856) ef07ddf08 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. 9c1697674 Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments. fa5d2656b Docking: DockBuilderDockWindow() API calls don't clear docking order if the target node is same as existing one 3cc9d2051 Examples: Win32+OpenGL3: Fixed not calling DefWindowProcW() as with other Win32 examples. (#6516, #5725, #5961, #5975) 3f63cee4c Docking: Fixed dragging from title-bar empty space (#5181, #2645) 884e3fd21 Backends: GLFW: Accept glfwGetTime() not returning a monotonically increasing value. (#6491, #6189, #6114) dec082ff9 Backends: OpenGL3: Fixed support for glBindSampler() backup/restore on ES3. (#6375, #6508) 066487799 Merge branch 'master' into docking 4fab72b40 BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. (#6503) a134892a3 BeginComboPreview: fix when part of preview rect is clipped by parent window. (#6501, #1658) 666b93e98 Demo: fixed a misuse of EndChildFrame(). (#6496) 956a1a17f Internals: add ImGuiNavMoveFlags_NoSelect and use in FocusItem(). 31f11cf30 Internals: Added FocusItem(). Made activation explicit/opt-in via ImGuiNavMoveFlags_Activate. Rename ActivateItem() to ActivateItemByID(). 8fd0a0413 Backends: SDL3: Fix backend in docking/multi-viewports branch. (#6483) 61ebb3784 Version 1.89.7 WIP f1777f951 Demo: fix casing swap demo inserting garbage characters when typing lowercase letters (#6482) 823a1385a Merge branch 'master' into docking 5319d1cff Version 1.89.6 075b975fe Fonts: Fixed crash when manually specifying an EllipsisChar that doesn't exist. (#6480) b47618457 Backends: SDLRenderer3: Amend/finish SDL_Renderer3 patch + add example. (#6286) 0b57c07c7 Backends: SDL3: Add SDL_Renderer for SDL3 implementation. (#6286) b709b02e9 Backends: SDL_Renderer2: renamed all functions accordingly. (#6286) 88e7d773d Backends: SDL_Renderer2: Renamed 'imgui_impl_sdlrenderer.h/cpp' to 'imgui_impl_sdlrenderer2.h/cpp' (#6286) 216ae7db5 Examples: SDL3: Added clues that Emscripten doesn't support SDL3 yet. (#6386) 3418d5094 Viewports: Fixes erroneous popup closure on closing a previous popup. (#6462, #6299) f0f3b927e Backends: GLFW: Avoid linking with GLFW function for homebrew switch (#6473) 6cc967a12 Backends: GLFW: Only enable Vulkan support if not building with Emscripten (#6468) 2e810d575 Backends: GLFW: Fix breaking typo 19b436f68 (#5683, #6459) 19b436f68 Backends: GLFW: Preserve monitor list when there are no monitor. (#5683) 7e03ae324 Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. (#6390) 7947f327d Demo: added casing swap demo to clarify use of ImGuiInputTextFlags_CallbackCharFilter. (#6457) + Metrics: simplified some code. 47579f8a4 Nav: set NavJustMovedToXXX fields on NavInit result + BeginChild() clears ActiveId on N+1 on entering instead of waiting for ID to elapse on N+2. 52e19113f Backends: OpenGL3: Added more explicit comments about using GL ES2/3 on targets where it's not automatic. (#6450) 08145bc45 Fonts: Fixed crash when merging fonts and the first font has no valid glyph. (#6446) 54c1ac3e3 Merge branch 'master' into docking 45c8c3b61 Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter(). df8667b18 Comments/typos tweaks 2c558d574 Internals: SeparatorEx(): expose thickness + add misc comments relating to Separators. e590b5114 Viewports: Fixed loss of imgui-side focus when dragging a secondary viewport back in main viewport. (#6299) c8579abb4 Examples: DX9: Fix WM_SIZE handling bug introduced in 031e152d2. (#6374) 7348e9926 CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression. e489e40a8 Clipper: Amend ecb0aaa (#6424, #3841) ecb0aaa7c Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). (#6424, #3841) + commented out obsolete ImGuiListClipper() constructor. a550263d6 Misc: made ErrorCheckEndWindowRecover() handle font stack. (#6431, #1651) bcfc1ad8f Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos. 530134d12 Merge branch 'master' into docking 430c05991 Docs: added more detailed information about UTF-8 encoding. 513af1efc Examples: Updated all Visual Studio project file to use /utf-8 option, so string literals are UTF-8 encoded by default. 0397321be Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. (#4388, #4921) 6656553fa Nav: Record/restore preferred position on each given axis. 39f7248d4 Backends: OpenGL3: Add glBindSampler for GL ES 3.0. (#6375) dd9db5e88 Backends: OpenGL3: Added runtime flags for ES2/ES3 to simplify coding-style. (#6375) 6cdedf583 Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. (#6405) 70cca1eac Backends: avoid null dereference in metal and osx shutdown (#6385, #6334) 5dc601371 Backends: SDL3: Fixed build on Emscripten/iOS/Android. (#6391) 7c291ba31 Tables: Fixed command merging when compiling with VS2013. (#6377) 085fa42b7 Adedd workaround for GCC erroneous/zealous warning (#5343) 031e152d2 Examples: DX9, DX10, DX11: Queue framebuffer resize instead of processing in WM_SIZE. (#6374) 15da1a9ab Fixed misleading local name (#4493) + minor typo (#6369) 031148dc5 Fixed bad merge. fd943182b ImVec2: Added unary minus operator (#6368) 594cc4793 Merge branch 'master' into docking d3ad2f357 Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. (#3496, #4797) b47507951 Nav: Fixed CTRL+Tab into a root window with only childs with _NavFlattened flags erroneously initializing default nav layer to menu layer. eed7b0e9c Nav: remove other-axis clamping, now that columns themselves are clamped. (#2221) da3d7e158 Focus: added an early out in FocusWindow() for the common case. 565aa0b76 Examples: Vulkan: pick integrated GPU if nothing else is available. (#6359) 0fbf2888e Examples: example_glut_opengl2: Fixed compilation issue (#6361) d2291df55 Viewports: Fixed setting focus from platform decoration from accidentally closing modals (#6299, #6357) bba39762d Merge branch 'master' into docking 4d42450a7 Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). (#6357, #4317) 01ca19653 Focus: move focused child restore code in FocusWindow() with ImGuiFocusRequestFlags_RestoreFocusedChild flag. (#6357) 30eceaf95 Focus: start moving modal check into FocusWindow(), add ImGuiFocusRequestFlags_UnlessBelowModal (currently opt-in, should try to make opt-out). (#6357, #4317) f0fe1957a Focus: merge extra param for FocusTopMostWindowUnderOne() from docking branch to facilitate merge. ac38c8e6f IO: removed ImGuiBackendFlags_HasMouseHoveredViewport assert in AddMouseViewportEvent(). c11128891 Backends: SDL2/SDL3: Update monitor list when receiving a display event. (#6348) adf693c06 Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant). 00d3f9295 Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. (#2221) 8d9e50c80 Nav: fixed IMGUI_DEBUG_NAV_SCORING not setting NavMoveClipDir, leading to debug result not matching real results. 662ce4697 Debug Log: Fixed not parsing 0xXXXXXXXX values when the identifier is at the end of the line. 07e07030a Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) a89590b42 Backends: Win32: revert accidental deletion of ImGui_ImplWin32_EnableAlphaCompositing() in a566ecc (#3218) 88ac2ced7 Backends: DX10: Fixed typo in previous commit. f498f084d Examples: Amend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 4bc51c6ff Examples: Extend Win32/Winapi + OpenGL example for multi-viewport. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) 1f2b84a65 Backends: clear viewport specific bits in io.BackendFlags on backend Shutdown(). (#6334) 4f692ba84 Merge branch 'master' into docking 9308cfdcf Examples: Amend Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a566ecc58 Examples: Add Win32/Winapi + OpenGL example. (#3218, #5170 and #6086, #2772, #2600, #2359, #2022, #1553) a338b78eb Backends: OpenGL3: amend reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d0836aa89 Backends: OpenGL3: reset GL_POLYGON_MODE separately for front and back when possible. (#6333) d6a7aca2f Nav: Debug: tweak debug facilities. 0948cfc19 InputText: do not set WantTextInputNextFrame during the frame InputText is deactivated. (#6341) e49d31a1c Tables: do not show empty tooltip when user submits TableHeader with no label to display. (#6342) f94a8344f Fix minor typos in FAQ (#6328) 055e71518 Backends: clear bits set in io.BackendFlags on backend Shutdown(). Clear BackendPlatformName. (#6334, #6335) f304603e1 Backends: GLUT: remove call to ImGui::NewFrame() from ImGui_ImplGLUT_NewFrame(). (#6337) 064153fca Version 1.89.6 WIP 0ea3b87bd Merge branch 'master' into docking 1ebb91382 Version 1.89.5 ba98667c6 Examples: Vulkan: further work for device extensions + tentative use o fVK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME. (#6109, #6172, #6101) 632428043 Examples: Vulkan: rework extensions setup + enable some to avoid validation layer errors. (#6109, #6172, #6101) 995f92a45 Nav: Made PageUp/PageDown/Home/End navigation also scroll parent windows. bed11b35d Fix typos and use nullptr in backends. Amend 506f7e0 aec062a8a Merge branch 'master' into docking d81f2ae4f Backends: WebGPU: Use WGSL shaders instead of precompiled SPIR-V + add Gamma uniform. (#6188) e67f2f479 Backends: WebGPU: Align buffer sizes upon creation. (#6188) cbdac1e15 Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. 18d72a914 Inputs: added a unique event identifier in ImGuiInputEvent. 506f7e007 Using nullptr in locations where warning disable is not convenient. (#6313, #4537) 9203883bb Comments + Metal using SetTexID(0) for consistency. e92b29ad5 Backends: OSX: Added support for io.AddMouseSourceEvent(). (#6314) db4c4e332 Backends: Android: Added support for io.AddMouseSourceEvent(). (#6315, #6318, #2702, #4921) 1668693bc Backends: SDL2/SDL3: Fixed IME text input rectangle position with viewports. (#6071, #1953) ec461c6cc Merge branch 'master' into docking a7703fe6f Backends: SDL2/SDL3: Avoid callng SDL_StartTextInput()/SDL_StopTextInput(). (#6306, #6071, #1953) 8738ed88f Fixed FindWindowSettingsByID() being able to return a deleted setting. 63370be0e Viewports: fix/amend dcb6335 to (1) avoid refocusing when focus action was actionned from a click within imgui boundaries and (2) restore a null focus as well. (#6299) 1f0b46b93 Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. (#1542) ed72fcd12 Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized dcb6335bf Viewports: Setting focus from Platform/OS sets corresponding focus at Dear ImGui level. (#6299) 47a07d847 ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. (#6304) ee5ce3674 Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497 c9fe7ebc7 IO: Input queue trickling adjustment for touch screens. (#2702, #4921) f070497cb Backends: Win32/SDL2/SDL3/GLFW: Added support for io.AddMouseSourceEvent(). (#2334, #2702) a16f99c6a IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. (#2702, #2334, #2372, #3453, #5693) 9a1e09eb1 Fixed ImVec2 operator[] warning.in Clang. (#6272) 13931fd85 Redirecting domain name e8206db82 InputText: Fixed crash introduced by 5a2b1e848 (#6292, #4714) 4fdafef54 Merge branch 'master' into docking 5f301914a TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll can be scrolled with horizontal mouse-wheel (or Shift + WheelY). (#2702) 84fd0c7ff Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel. a38e3c222 Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. (#6272) f65bcf481 Docs: added details and link to wiki from imgui_stdlib to increase discoverability. 8a6911b89 Backends: Fixes zealous warnings (#5760) 7dcf129b3 Backends: OpenGL3: Properly restoring "no shader program bound". (#6267, #6220, #6224) 821814b45 InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. (#6067) bf87fbcbc Docking: Fixed using GetItemXXX() or IsItemXXX() functions after a DockSpace(). (#6217) 89d09070e Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. (#4828, #3255, #5641) c98bad042 ColorEdit, RadioButton, Windows: Using adaptative tesselation for preview circles. 9ac94ff00 ColorPicker: Fixed shading of S/V triangle in Hue Wheel mode. (#6254, #5200) ad44f5831 Merge branch 'master' into docking d885094be Demo: stop relying on internal function. e55a0ef10 IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498. (#6199, #6256, #4921, #5856) 7269498ec IO: actually fixed adding events from inactive context (#6199, #6256, #4921, #5856) 5320a6ebd Backends: Made SDL3 backend compatible with commit 698dbd8. (#6255, #6146) cac76b275 Slider, Drags: skip %+ and %# format flags for scanning. (#6259) 5a2b1e848 InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true (#4714) 314e6443c Internals: removed ImGuiInputSource_Nav enum, 5d4a8978b Docs: added all older versions to Changelog. c501c2d4c Internals: inverted a block in InputScalar() to facilitate reading/stepping in common case. 6b3435a2d Merge branch 'master' into docking 91577c7f5 Backends: GLFW: Fixed key modifiers handling on secondary viewports. (#6248, #6034) 301c95603 Examples: Windows: Added 'misc/debuggers/imgui.natstepfilter' file to all Visual Studio projects. (#3038) 8b6e021f3 Demo: Fixed typos. (#6247) ae4dad09b Examples: SDL3: Updated for latest WIP SDL3 branch. (#6243) 85beda96d Backends: GLFW: Fix Emscripten erroneously enabling multi-viewport support, leading to assert. (#5683) 0d606968d Backend: OpenGL3: Amend b0c18166 fix cases where glGetString(GL_VERSION) returns NULL. (#6154, #4445, #3530) 24a44b9ab Version 1.89.5 WIP 9e30fb0ec Merge branch 'master' into docking f3f6295d5 Version 1.89.4 e39c2552a Backends: GLFW: Avoid using glfwGetError() and glfwGetGamepadState() on Emscripten. (#6240) cc2177de1 Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options. 552969e33 BeginTooltip: correctly testing return value of BeginTooltipEx() even though it always return true in current code. c426e3224 Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects. 6ca1556d0 Nav: Fixed SetItemDefaultFocus() from not scrolling when item is partially visible. (#2814, #2812) 9937660b1 Merge branch 'master' into docking bb224c8aa Examples: Updated all examples application to enable ImGuiConfigFlags_NavEnableKeyboard and ImGuiConfigFlags_NavEnableGamepad by default. 2bb9e35a4 Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. (#3092, #5759, #787) e83fb468c Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092) a322122f7 InputText: Fixed not being able to use CTRL+Tab while an InputText() using Tab for completion or textinput is active. 3b2f61765 BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo. e2cede654 Merge branch 'master' into docking b5f938103 Made internal clipboard/IME handlers not rely on implicit GImGui context (#5856) c8ad25caa Make classes not depend on the implicit GImGui context (#5856, #6199): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes 10ace228b Make classes not depend on the implicit GImGui context (#6199, #5856, #6199): ImGuiIO 5a1e6b60a Nav: Fixed an issue with Gamepad navigation when the movement lead to a scroll and frame time > repeat rate. (#6171) c9a53aa74 Nav: Made Enter key submit the same type of Activation event as Space key. (#5606) b4b79584d Internals: added GetStyleVarInfo(). exposed previously .cpp only ImGuiStyleVarInfo as ImGuiDataVarInfo. 57d0fcd02 Examples: Fix Android example build for Gradle 8. (#6229) b6586bb06 TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags. 1c29a8ed1 Debug Log: auto-disable ImGuiDebugLogFlags_EventClipper to reduce spam. f5c5a710a Docking: exposed DockNodeWindowMenuHandler_Default() in imgui_internal.h to facilitate reuse. 4078abe14 Merge branch 'master' into docking 702626dd8 Docking: storing window menu handler in a function pointer to allow customizing menu (undocumented) 66b762577 Backends: OpenGL3: Fixed restoration of a potentially deleted OpenGL program. (#6220, #6224) bfce7750b Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h (#4921, #6191) 2496b973f Backends: SDL2,SDL3: Accept SDL_GetPerformanceCounter() not returning a monotonically increasing value. (#6189, #6114, #3644) e9743d85d Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. (#6183, #5817) 2ee77aa6b Missing closing parenthesis in debug popup log (#6177) 696a53353 TestEngine: added ImGuiItemStatusFlags_Inputable flag report to facilitate fuzzing. 752603bc7 Fixed imgui_single_file.h for IMGUI_DEFINE_MATH_OPERATORS change. (#6164, #6137, #5966, #2832) a1b8457cb Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. (#6164, #6137, #5966, #2832) e25e4526c Merge branch 'master' into docking 5d7489128 Backends: Win32: Use WM_NCMOUSEMOVE / WM_NCMOUSELEAVE to track mouse positions over non-client area (OS decorations) when app is not focused. (#6045, #6162) 4f630b044 imgui_freetype: fixed non-ASCII characters in sources. (#6166) 204cb4d22 Version 1.89.4 WIP 192196711 Merge branch 'master' into docking 458a10903 Version 1.89.3 b0c181666 Backends: OpenGL3: Fixed loader compatibility with GL_VERSION for GL 2.x (#6154, #4445, #3530) fa0852f9e ColorEdit, ColorPicker: Fixed hue/saturation preservation logic from interfering with the displayed value (but not stored value) of others widgets instances. (#6155) 092b6825a Fonts: Assert that in each GlyphRanges[] pairs first is <= second. 345184330 Internals: Settings: amend ClearWindowSettings() for Docking. ea4565368 Merge branch 'master' into docking f0ac68ad3 Internal: Settings: amend 0b86513 revert to use FindWindowSettingsByID(). 082b20e46 Internals: Settings: added ClearWindowSettings(). Extract part of CreateNewWindow() into InitOrLoadWindowSettings(). b2ebd03b1 Internals: Settings: moved Windows setting to their sub-section. 0b865136e Internals: Settings: Added FindWindowSettingsByName() (replacing old version by ID) FindWindowSettingsByWindow() + remove unnecessary FindOrCreateWindowSettings(). 0d7d877cb Backends: SDL3: Update for latest. 99c0bd65d Added SeparatorText() widget. (#1643) 85395b76b CI: Update versions. fac19e188 Backends: SDL2:+SDL3 Implement SetPlatformImeDataFn (amends). (#6071, #1953) + fix SDL3 setting PlatformHandleRaw. (#6146) 734c6af18 Backends: SDL2: Implement SetPlatformImeDataFn. (#6071, #1953) 95412ad3a Backends: SDL3: Removed unnecessary #ifdef. a526ff8c3 Backends: SDL3: Added multi-viewports support. (#6146) e4233c6fb Merge branch 'master' into docking (doesn't include viewports-related changes for new SDL3 backend) 13fbd9949 Backends: SDL3: update to run with SDL3. Examples: Add SDL3+Gl example. Remove some version checks. (#6146) d9bf80f65 Backends: SDL3: copied imgui_impl_sdl2 into imgui_impl_sdl3 and ONLY replaced strings (1/2). (#6146) e816bc672 Merge misc changes from docking branch to reduce small drift. 1b27ac982 Backends+Examples: SDL2: renamed imgui_impl_sdl.cpp/.h to imgui_impl_sdl2.cpp/.h. (#6146) c807192ab Tables: amend f799a29 with a better solution + fix potential overflow (#6140) d6ea56dfd Tables: amend f799a29 with a better solution + fix potential overflow (#6140) ea39841fc Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) b0a936e5d Merge branch 'master' into docking (incl revert of examples refactor) 97a1f761c Examples: (Again, but better) made SDL+GL and GLFW+GL examples build with Emscripten. (#2492, #2494, #3699, #3705) f43c6ea6a Revert most of "Examples: refactor all examples with a MainLoopStep() function..." (#2492, #3699)" f799a293c Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. (#6140) c75410e72 Debug: fix display order of InputText's data CurLenA/CurLenW (#6143) a08558105 Backends: GLFW: added ImGui_ImplGlfw_SetCallbacksChainForAllWindows(). (#6142) 265b88273 Backends: Fixed pragma warning with old GCC. d0b1aaa07 Backends: GLFW: Registering custom low-level mouse wheel handler to get more accurate scrolling impulses on Emscripten. (#4019, #6096) 6584de4a7 Backends: SDL: Avoid calling SDL_SetCursor() when cursor has not changed. (#6113) 5ebb6a295 Merge branch 'master' into docking 46efed8b7 CI: Fix Emscripten build. 1f1861dae Backends: Added support for SDL 2.0.18+ preciseX/preciseY mouse wheel data for smooth scrolling + scaling for Emscripten. (#4019, #6096) 5386ddcd0 Merge branch 'master' into docking 624c057ae Backends: GLFW: revert flipping mouse-wheel axis for Emscripten. (#4019) ce6e6da51 Examples: Made example_sdl_opengl3 and example_glfw_opengl3 build with Emscripten. Removed dedicated examples. (#2492, #2494, #3699, #3705) 96ab68eee Examples: refactor all examples with a MainLoopStep() function, to facilitate use with Emscripten. (#2492, #3699) b51919dce Examples: Emscripten+GLFW: revert to use a shell_minimal.html closer to vanilla one, as our fullscreen + misc tweaks to Emscripten+SDL example to match other version. 0370856d7 Backends: GLFW: Removed mouse-wheel value scaling for Emscripten. (#4019, #6096, #6081) f822e07d7 Backends: SDL: Removed SDL_MOUSEWHEEL value clamping. (#4019, #6096, #6081) 887abe957 Merge branch 'master' into docking 3617a9637 Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. (#4019, #6096, #1463) 8d29665ae Backends: OSX: Fixed scroll wheel scaling for devices emitting events with hasPreciseScrollingDeltas==false (e.g. non-Apple mices). 2efebe331 ShowFontAtlas, Demo: optionally use style text color for tint. (#6129) 5a3f82e2f Examples: SDL+SDL_Renderer: Added call to SDL_RenderSetScale() to display is correct on a Retina display (albeit lower-res as our other unmodified examples). (#6121, #6065, #5931). 867bdbecb Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. (#6132, #5720, #5919) d71977646 Internals: added 'ImGuiButtonFlags flags' to ImageButtonEx(). (#6126) f14288708 Combo: Allow SetNextWindowSize() to alter combo popup size. (#6130) 259560aa2 Demo: moved sections around in prevision for adding nicer separators. 27f2dd56d Internals: move "%s" skip-formatting logic to ImFormatStringToTempBuffer() function, meaning Text() and all the *V() functions can also benefit from it. (#3466) d73e3285d Backends: WebGU: Revert the implicit render pipeline layout generation as introduced in 83bdfef (#6117, #4116, #3632) fc5053221 InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip). 5741cbae4 Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones. f4ef420c0 InputText: Added support for Ctrl+Delete to delete up to end of word. (#6067) 07490618a Misc: Tolerate zero delta-time under Emscripten. (#6114, #3644) fe0a24f38 Examples: Win32: Fixed examples using RegisterClassW() since 1.89 to also call DefWindowProcW(). (#5725, #5961, #5975) 3d8885cbb TabBar: Internals: add GetCurrentTabBar(), TabBarFindTabByOrder(), TabBarGetCurrentTab(), TabBarGetTabOrder(), TabBarGetTabName(), TabBarQueueFocus() + clear LastTabItemIdx on EndTabBar(). (#5853, #5997) 739a79b1e ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when color alpha is zero. Window: Avoid rendering shapes for hidden resize grips. f6db9e2f3 Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) e8421de23 imgui_single_file: include imgui_freetype.cpp if the define is set. 8f907bc9a imgui_freetype: fix warnings (#6104), fix typos. (#6079) 88dfd85e9 Merge branch 'master' into docking 91667430a Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. (#6094, #5305, #4876, #3572) 14908cba8 Internals: ImBitArray, ImBitVector: using macro helper for common op + disable stack checks on MSVC agressive debug builds. db5542287 Tables: removed hot RequestOutputMaskByIndex bit-array as majority of code-paths are already touching the cold parts. 6342275bb Backends: GLFW: Handle unsupported glfwGetVideoMode() for Emscripten. (#6096) 3482d4ecc Text: Fixed layouting of wrapped-text block skipping successive empty lines. (#5720, #5919) 0359f6e94 Internals: ImDrawList: shallow tweaks to RenderText(). 51c97a41a PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets. 82fdd7018 Update FAQ.md ccf94e2e6 Strip seemingly unecessary tests, as UTF-8 decoder can not return null since 9cca1b2e9 55b8ce9b2 Reword ImTextCharFromUtf8() to avoid a warning + marked UTF-8 functions with IM_MSVC_RUNTIME_CHECKS_OFF. (#5987) 1297a2be5 Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. (#2775, #4269) 8801f0294 Text: Fix clipping of single-character "..." ellipsis when font is scaled. (#2775 482ac70a0 Version 1.89.3 WIP 46b9c09e4 Update .gitignore a218d3a82 Update information in ImFontAtlas::GetGlyphRangesJapanese (#6066) d822c6531 Merge branch 'master' into docking d7c8516a4 Version 1.89.2 e06bbe05e Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." (#456, #2637) 83429abf4 Internals: simplify ButtonBehavior(), also to allow easily adding a mouse_button_down thing. 03add24ac Selectable: Internals: removed unused ImGuiSelectableFlags_DrawHoveredWhenHeld flag. 57a5b73a4 InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. (#6000) 1f6e62a4a Backends: GLFW: Fixed mods state on Linux with Alt-GR text input (e.g. German keyboard layout), (#6034) 9150c23c0 imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) 9c1dac3ff Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) fc3815bfe Merge branch 'master' into docking 4b39c1f65 Docs: adding Tests badge + more references to Test Engine. 824baa6a4 Docking: fixed DockSpace() with ImGuiDockNodeFlags_KeepAliveOnly marking current window as written to,. (#6037) 42e166089 Backends: Metal: fixed secondary viewport rendering. (#6015, #4821, #2778) 156e0a807 Demo: amend Selectable() + BeginPopupContextItem() demo to maintain and update selection state when popup is open. (#6032) 693967637 Docking: fixed DockBuilderCopyDockSpace() crashing when windows not in the remapping list are docked on the left or top side of a split. (#6035) e5d51866c Backends; Vulkan: do not set VkDescriptorSetLayoutBinding::pImmutableSamplers, allow changing sampler. (#6001, #5502, #914) c9aef1606 Backends: Vulkan: Remove duplicated and dead code in Vulkan backend (#6001) 328695bd4 Provide a non-empty definition for IMGUI_DEBUG_PRINTF when disabled. (#5978) 16aaf6069 Backends: OSX: fixed ImGui_ImplOSX_GetWindowSize and ConvertNSRect. (#6009) 90de83944 Backends: SDL: fix build on WinRT (#6019, #5974) - version for docking branch da832532c Backends: SDL: fix build on WinRT (#6019, #5974) 52c61deaf Happy new year! e57871bb9 imstb_truetype: Add missing `return` keyword in error case of `stbtt__cid_get_glyph_subrs` (#6007) f1ddf6302 ScrollToRectEx: Fix bug where scrolling horizontally to an always-centered element that is not visible but could be would take the item's Y coordinate into account. 91b356cf8 Examples: Allegro: Fixed compilation instructions. (#5973) c191faf0b Merge branch 'master' into docking 59b63defe Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view. 317b33d64 Tables: fixed matching width of synchronized tables when only some (not all) instances have a vertical scrollbar. (#5920) 0949acb6e Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. (#456, #2637) 1dae7df26 Misc: added GetItemID() in public API. 48215231f Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod d3025cde3 Merge branch 'master' into docking 9d08506dc Tables, Nav: frozen columns are not part of menu layer and can be crossed over. (#5143, #3692) fd0b3734d Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. (#5143, #4868, #3692) 16cee3d00 Internals: tidying up and standardizing outer decoration size storage. (toward #5143, #4868, #3692, #3518) 820b1e651 Internals: reduced duplicate code in CalcNextScrollFromScrollTargetAndClamp() by looping through axiees. 24b873a74 Internals: renaming inside ScrollToRectEx() + fixed misplaced changelog entry. 5eda547e6 Merge branch 'master' into docking ed54e14f1 Refactor: moved UpdateAliasKey(), GetMergedModsFromKeys(), UpdateKeyboardInputs(), UpdateMouseInputs() to INPUTS section. f83da768b Refactor: moved LockWheelingWindow(), FindBestWheelingWindow(), UpdateMouseWheel() to INPUTS section f9ab2a0e9 Refactor: moved UpdateKeyRoutingTable() to INPUTS section. renamed GetKeyVector2d() -> GetKeyMagnitude2d() 38a0d7ceb Refactor: added INPUTS section index, moved IsMouseHoveringRect() to INPUTS section. b5883c1cf Refactor: moved bits into Initialization section. 713e034d9 Backends: OpenGL3: Fix for zealous warning. (#5947) 3ea0fad20 Merge branch 'master' into docking 844e0ae68 Fixes/amend 9825f7f + amend Changelog (#4857, #5937) 0e2a167bd Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. 9825f7fa8 Fixed cases where CTRL+Tab or Modal can occasionally lead to the creation of ImDrawCmd with zero triangles. (#4857, #5937) 66ad2ad53 Properly detect SSE instruction support in 32-bit MSVC build. (#5943) a5e96ff99 Make ImGuiInputTextState not depend on the implicit GImGui context. (#5856) 45736443b Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. 87caf27ac Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. (#3795, #4559) a5f3596e6 Backends: Allegro5: use al_draw_indexed_prim() or al_draw_prim() depending on version. (#5937) 50aeeff96 Backends: Allegro5: Brough back al_draw_indexed_prim when available. (#5937) bf4c2e00c Docs: retroactively update 1.89 changelog/docs to clarify that strong typing ImGuiKey was technically a breaking change for users of legacy indices. (#4921) cc3a2200a Internals: invert logic of mods key<>bool translation to facilitate other experiments and put emphasis on new API. (#5923, #4921) 1a497c249 Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456) 969af7c77 Internal: Disable debug logs macro if IMGUI_DISABLE_DEBUG_TOOLS is defined. (#5901) bd96f6eac Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. (#5720, #5919) 540909bdd Fixed version string for consistency (#5918) 6af38b1a4 Fixed version string for consistency (#5918) fad8afd62 Docking: amend to allow localizing docking specific user facing string. (#5895) 595a428ba Merge branch 'master' into docking a8df192df Version 1.89.1 27c58c394 Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. (#5902, #2812, #4242, #2900) d2f9c5dfb Viewports: moving PlatformWindowCreated field to public structure. (#5882) 233d7ad3f Backends: WebGPU: fixed validation error with default depth buffer settings. (#5869, #5914) 856c6314e Drag and Drop: fixed GetDragDropPayload() returning a non-NULL value before payload is submitted. (#5910, #143) ffe0abbfc Internals: added basic localization system (#5895) c3d9f8ee7 Layout: fixed End()/EndChild() incorrectly asserting if users manipulates cursor position inside a collapsed/culled window and IMGUI_DISABLE_OBSOLETE_FUNCTIONS is enabled. (#5548, #5911) 3a685749c ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. (#5912) 16476f99f Backends: GLFW: cancel out errors emitted by glfwGetKeyName() when a name is missing. (#5908) 9964740a4 Viewport: Fixed collapsed windows setting ImGuiViewportFlags_NoRendererClear without making title bar color opaque. 38cfe22b8 Merge branch 'master' into docking 5bb287494 Version 1.89.1 WIP 7bee9a8f9 Inputs: fixed moving a window or drag and dropping from preventing input-owner-unaware code from accessing keys. (#5888, #4921, #456) d60985df7 Inputs: fix moving a window or drag and dropping from capture mods. (#5888, #4921, #456) 83cee9e09 InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut() 94e850fd6 Merge branch 'master' into docking 81160fee5 Version 1.89 a582d92c3 Inputs: modulate wheel lock timer for small amount of wheeling. Slightly lower timer. (#3795) 03d3343e2 Docs: Update FAQ.md explaining how to enable hidpi for Windows app. (#5880) 00b637084 Backends: WebGPU: fixed rendering when a depth buffer is enabled. (#5869) d7aca168e Backends: SDL: Fixed drag'n drop crossing a viewport border losing mouse coordinates. (#5710, #5012) 7380b9816 Scrolling: Exposed SetNextWindowScroll() in public API. (#1526) cda26635c Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns. a571933f8 Merge branch 'master' into docking b8b0f9d02 Backends: OpenGL3: Reverted use of glBufferSubData(). (#4468, #4504, #3381, #2981, #4825, #4832, #5127) f0ad81055 Inputs: tweak comments, typos. 4d5da74c7 Merge branch 'master' into docking 637ddfce0 Inputs, Nav: made it possible to remap CTRL+Tab (#4828, #3255, #5641) 6c9c4879d Inputs: made Shortcut() routing id defaults to current FocusScope ID. (#456, #2637, #3724) d576724bf Inputs: made ImGuiInputFlags_RouteFocused the default for Shortcut(). (#456, #2637, #3724) 4d6a9ef93 Inputs: added routing priorities. (#456, #2637, #3724) 7ff2d3353 Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). (#456, #2637, #3724) c59ebb2d7 Inputs: added basic Shortcut() function - no routing yet. (#456) 8c95c084c Inputs: changed specs of SetKeyOwner() to alter OwnerCurr immediately. 4448d975d Inputs: added wip/internal Input Owner system. (#456, #2637, #2620, #2891, #3370, #4828, #5108, #5242, #5641) 5728f2e15 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 44d98bfd6 Fix build with IMGUI_DISABLE_DEBUG_TOOLS 849c8052b Merge branch 'master' into docking 529cba19b Debug Tools: Added DebugLocateItem()/DebugLocateItemOnHover() to visually locate items when hovering a 0xXXXXXXXX value. (#5855, #2673, #4631) 7109f32f9 Internals: tidying up and stripping more of focus scope code. 9f66a3a9e Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit. 1eac0024c InputText: copy and select all shortcuts don't need repeat (tho it was harmless0 90e9465fa Window: Fixed position not being clamped while auto-resizing (#5843) 6e9dfe1de Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). (#5843) 86f2af2bc Backends: OSX: Fixed mouse coordinate before clicking on the host window. (#5842) ced92d9c5 Inputs, Viewports: fix UpdateViewportsNewFrame() running before UpdateInputEvents(), leading to MouseViewport lagging by a frame on transitions. (#5837, #4921) c2694ef75 Examples: Android: Using LoadIniSettingsFromMemory() / SaveIniSettingsToMemory() to save in appropriate location for Android. (#5836) 22bcfca70 IO: Clear AppFocusLost in EndFrame() in order to allow backend or application code to poll and react to it a241dc799 IO: Fixed AddFocusEvent(false) to also clear MouseDown[] state. (#4921) a61bbdc23 Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79. 9db6b1a0d Backends: Win32: minor tidying up. (#5819) baea25e65 Drag and Drop: extracted a RenderDragDropTargetRect() function (#1603) 375ae5dce Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED) 431fc6a7f Internals: using ItemAdd() consistently for internal items: windows & tables resize grips/borders, ScrollbarEx(). 178aee4b1 Debug Tools: Debug Log: add and use ImGuiTextLineIndex. 50c4234ac Docking: Further fixes for highlight of nested nodes. (#5702) 5370b46c4 Docking: Made spacing between dock nodes not a dropping gap. 578df14f2 CI: Remove left-over discord stuff. f6bd7c8e5 Debug Tools: Item Picker: remove IMGUI_DEBUG_TOOL_ITEM_PICKER_EX since it doesn't work on non-ItemHoverable() items anyway. (#2673) bc918404f Internals: using ImToUpper() since std one does too many things. 9a35bfea3 Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use). de1593d5c Backends: DX12: Fixed stale comments. (#5798) e3fa56ae0 BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu(). 5ac94ad89 Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame. ab6e48b83 Backends: GLFW: Perform a dummy glfwGetError() read to cancel missing mouse cursors errors. (#5785) f87e891f1 Merge branch 'master' into docking 08752b372 Menus, Popups: Experimental fix for issue where clicking on an open BeginMenu() item called from a window which is neither a popup neither a menu used to incorrectly close and reopen the menu. (#5775) 81176737f Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). (#5775) 3920b1c76 Removed commented out old flags from when Tables was a branch. b15347cb7 Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. (#2957) 3e8d19813 Removed runtime patching of obsolete/invalid "%f"/"%.0f" types of format strings for DragInt()/SliderInt(). 5196bd15e Docs: Update outdated code sample (#5766) edf522b58 Merge branch 'master' into docking + amends change to nullptr (#5760) c54230d14 Backends: Using nullptr instead of NULL. (#5760, #4537) + fix additional warnings. 8a44c31c9 Scrolling: Further reduce unrelease mouse-wheel locked window timer + misc refactor (#2604, #3795, #4559) dfa1bb0ac Backends: OSX: Fixed mouse inputs on flipped views. (#5756) cb04326b4 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. [changes for docking] (#5745) 85a368b58 Fixed ImGuiWindowFlags_UnsavedDocument clipping label in docked windows with no close button. (#5745) c7d3d22ae Scrolling: Mitigated issue where multi-axis mouse-wheel inputs (usually from touch pad events) are incorrectly locking scrolling in a parent window. (#4559, #3795, #2604) 80a870a3e Scrolling: Tweak mouse-wheel locked window timer so it is shorter but also gets reset whenever scrolling again (#2604) + small refactor 282b2b5af Backends: Vulkan: Fix building with VK_NO_PROTOTYPES. (#914, #5738). a588f00f7 Backends: Vulkan: Added experimental ImGui_ImplVulkan_RemoveTexture() for api symetry. (#914, #5738). fb0b9c716 Docking: Fixed missing highlight when using dock node host window borders. (#5702) 588421986 imgui_freetype: Assert if bitmap size exceed chunk size to avoid buffer overflow. (#5731) f2a522d70 ImDrawList: Not using alloca() anymore, lift single polygon size limits. (#5704, #1811) 69beaa1d0 Viewports: Fix AddMouseViewportEvent() to honor AppAcceptingEvents, filter duplicate, add to debug log. d91211f9f Merge branch 'master' into docking cc5058e5d IO: Filter duplicate input events during the AddXXX() calls. (#5599, #4921) fac8295d6 IO: remove ImGuiInputEvent::IgnoredAsSame (revert part of 839c3100), will filter earlier in next commit. (#5599) 9e7f460c0 Fixed GetKeyName() for ImGuiMod_XXX values, made invalid MousePos display in log nicer. (#4921, #456) 074945335 Menus, Nav: Fixed not being able to close a menu with Left arrow when parent is not a popup. (#5730) 9f6aae3bf Nav: Fixed race condition pressing Esc during popup opening frame causing crash. bd2355a04 Menus, Nav: Fixed using left/right navigation when appending to an existing menu (multiple BeginMenu() call with same names). (#1207) 3532ed162 Menus, Nav: Fixed keyboard/gamepad navigation occasionally erroneously landing on menu-item in parent when the parent is not a popup. (#5730) d5d705069 Various comments e74a50f52 Added GetGlyphRangesGreek() helper for Greek & Coptic glyph range. (#5676, #5727) d17627b9c InputText: leave state->Flags uncleared for the purpose of backends emitting an on-screen keyboard for passwords. (#5724) 0a7054c7e Backends: Win32: Convert WM_CHAR values with MultiByteToWideChar() when window class was registered as MBCS (not Unicode). (#5725, #1807, #471, #2815, #1060) a229a7f39 Examples: Win32: Always use RegisterClassW() to ensure windows are Unicode. (#5725) e0330c169 Fonts, Text: Fixed wrapped-text not doing a fast-forward on lines above the clipping region. (#5720) 4d4889bf1 Refactor CalcWordWrapPositionA() to take on the responsability of minimum character display. Add CalcWordWrapNextLineStartA(), simplify caller code. 5c4426c5b Demo: Fixed Log & Console from losing scrolling position with Auto-Scroll when child is clipped. (#5721) 12c024689 Removed support for 1.42-era IMGUI_DISABLE_INCLUDE_IMCONFIG_H / IMGUI_INCLUDE_IMCONFIG_H. (#255) 73efcec56 Examples: disable GL related warnings on Mac + amend to ignore list. a725db17b Comments for flags discoverability + add to debug log (#3795, #4559) 11f5be0ca Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 325299f94 Backends: OpenGL: Add ability to #define IMGUI_IMPL_OPENGL_DEBUG. (#4468, #4825, #4832, #5127, #5655, #5709) 56c3eaed2 ImDrawList: asserting on incorrect value for CurveTessellationTol (#5713) 04316bd22 ColorEdit3: fixed id collision leading to an assertion. (#5707) 8f434874c Docking: Fixed incorrect focus highlight on docking node when focusing a menu. (#5702) 6fd2ee941 Merge branch 'master' into docking c261dac02 Demo: moved ShowUserGuide() lower in the file, to make main demo entry point more visible + fix using IMGUI_DEBUG_LOG() macros in if/else. 51bbc7065 Backends: SDL: Disable SDL 2.0.22 new "auto capture" which prevents drag and drop across windows, and don't capture mouse when drag and dropping. (#5710) 7a9045dd7 Backends: WGPU: removed Emscripten version check (currently failing on CI, ensure why, and tbh its redundant/unnecessary with changes of wgpu api nowadays) 1dc7d0e63 Merge branch 'master' into docking 83a0030c0 Added ImGuiMod_Shortcut which is ImGuiMod_Super on Mac and ImGuiMod_Ctrl otherwise. (#456) fd408c979 Renamed and merged keyboard modifiers key enums and flags into a same set:. ImGuiKey_ModXXX -> ImGuiMod_XXX and ImGuiModFlags_XXX -> ImGuiMod_XXX. (#4921, #456) f359dca0d Misc input related changes to facilitate upcoming merges. 85f327d8d InputText: added ImGuiInputTextFlags_EscapeClearsAll (#5688) 60ab8a94a InputText: fixed minor one-frame selection glitch when reverting with Escape + disable cursor rendering on revert frame. (#3008) 4b522e145 Experiment: ImGuiKey is now a typed enum, allowing ImGuiKey_XXX symbols to be named in debuggers. (#4921, #4537) 5c8041b4d Update gif in README + font names in examples 2736af6b6 Minor optimization of ImFontAtlasBuildMultiplyRectAlpha8() + README tweaks. efe4a3722 Fix typo (#5691) 3af9ac320 Merge branch 'master' into docking 1dd964f87 Popups & Modals: Fix (amended) somehow undocumented Popup+Child behavior (useful for e.g. #718, #4461 and probably other things) 440f25768 Popups & Modals: fixed nested Begin() being erroneously input-inhibited. (useful for e.g. #718, #4461 and probably other things) 472f8013b Moved version number higher up in imgui.h to increase visibility 2b1d8e3ea Fix more typos in sources and docs (#5681) 44e3ba115 Demo: moved "Mouse Cursors" section. moved "Filtering" section. 673df6191 More compact README 1816c5241 Examples: updated VS projects with .natvis file under imgui/ e8178bf8a Update README.md a0e1591ac Fix more typos (#5679) 6c3c9cea7 Fix typos in source comments (#5675) 091445a4a Examples: added all SDL examples to VS solution. 513c1ba99 Removed the bizarre legacy default argument for 'TreePush(const void* ptr = NULL)' (#1057) 64b88da21 Merge branch 'master' into docking cb48c81a4 Tabs: Fix initial tab state. Amend 3e6f948( (#5572) 52d9ee0dc Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug (second fix). (#5652, #5262) caf4b7f1e Backends: SDL: Fixed building backend under non-OSX Apple targets (e.g. iPhone). (#5665) 3e6f94885 Tabs: Enforcing minimum size of 1.0f, fixed asserting on zero-tab widths. (#5572) b137f31b8 Tabs: Fixed ShrinkWidths() redistribution of remainder leading to infinite bug + over redistribution. (#5652) 2171375f9 InputText: clarified that callbacks cannot modify buffer when using the ReadOnly flag. 9e7c0f985 Fix typos in docs (#5649) b87e58fab ImGui::InputText: added support for shift+click style selection. (#5619) fe62927bd Backends: OpenGL: Update comments. (#4445, #5642, #4649) 9e1ccf8fa Commented out redirecting functions/enums names that were marked obsolete in 1.77 and 1.78 (June 2020): (#3361) aceab9a87 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) edcd5b113 Obsoleted using SetCursorPos()/SetCursorScreenPos() to extend parent window/cell boundaries. (#5548) bc2002ab9 Merge branch 'master' into docking 5867a43dc Backends: GLFW: Honor GLFW_CURSOR_DISABLED by not setting mouse position. (#5625) 9445776d6 Nav: Fixed an issue opening a menu with Right key from a non-menu window. 03fc9a0b1 Menus: Fixed gaps in closing logic. (#5614) b3ea01d86 Menus: Fix sub-menu inhibition stopping working in some cases. (Amend WIP) (#2517, #5614, noticed in #5546) a502ceb07 Added commented out older obsolete names (1.42 to 1.52) 2569c6474 Demo: Improved "Constrained-resizing window" example, more clearly showcase aspect-ratio. (#5627, #5618) 7f2514397 Better error reporting for PopStyleColor()/PopStyleVar() + easier to recover. (#1651) 747c9a7ad IsKeyPressed(), IsMouseClicked(), GetKeyPressedAmount(): add a (normally unnecessary) test for ->Down next to ->DownDuration tests, facilitating the use of key eating mechanism. e13913ed5 IsItemHovered: Added ImGuiHoveredFlags_DelayNormal, ImGuiHoveredFlags_DelayShort, ImGuiHoveredFlags_NoSharedDelay. (#1485) 71a070192 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); b3b3a0713 Nav: Fixed regression in e99c4fc preventing CTR+Tab to work without NavEnableKeyboard (#5504, #4023); 2c1262b43 ImVector: fix undefined behaviour during copy operator if source vector is null. (#5608) db798fd5b Merge branch 'master' into docking 72096bf69 Clipper: simplify code and remove cases where true is returned with empty display range as an extra step. 07b9999de Debug Log: added 'Clipper' events logging. 4eb906699 Clipper: extract code into a ImGuiListClipper_StepInternal() to facilitate debugging. Moved clipper End() call to outer layer, stopped heretic use of comma operator. 21b5fac57 Backends: Metal: Update deprecated property 'sampleCount'->'rasterSampleCount' (#5603) b78738ff2 Internals: Docking: rename HoveredDockNode to DebugHoveredDockNode to clarify that it isn't usable for much other than debugging. d357e8504 TestEngine: revert part of 5b0510c as IMGUI_TEST_ENGINE_ITEM_ADD() woul see an erreneous hierarchy. 7f4b477d2 CI: Update ubuntu version (#5598) cdebd70e1 Fix PVS-Studio static analyzer warning for "buffer underflow" 5b0510c5b TestEngine: facilitate aiming at InputScalar() using wildcards + removed unnecessary IDStack.size hack (require TestEngine latest) ef6ba0d84 Misc: allowing override of IM_TABSIZE (#5593) 268565079 InputText: numerical fields automatically accept full-width characters (U+FF01..U+FF5E) by converting them to half-width (U+0021..U+007E). 8cbd391f0 Docking: Add source dock node parameter DockContextCalcDropPosForDocking() to facilitate test engine (un)docking nodes before they are split out to their own window. Metrics: Display dock_node->Windows in node metrics. a396233cb Platform IME: Windows: Revert 133bbafa and 29a8ee08 as regression until new results comes. (#2589, #5535, #5264, #4972) 839c31006 Debug Log: Added IO events logging. 133bbafa3 Platform IME: Windows: Fixed a call to ImmAssociateContextEx() leading to freeze on some setups. (#2589, #5535, #5264, #4972) ff1567e24 Docking: Simplify logic of moving tabs between nodes. Amends 0abe7d. (#5515) c911901b5 Fix ImGuiIO docs and default values (#5540) e9f50fb87 Merge branch 'master' into docking 0a4ddd724 Fix being unable to mouse wheel while dragging a payload (fix 1480bc5, #4921, #2891) 4a2ae06ca Changed signature of ImageButton() function: Added 'const char* str_id' parameter + removed 'int frame_padding = -1' parameter. (#5533, #4471, #2464, #1390). f573ebf31 Docking+Viewports: Fix undocking window node causing parent viewport to become unresponsive. (#5503) b12e056c2 Docking: Fixed amending into an existing tab bar from rendering invisible items. (#5515, amend b16f738d #2700, #2539) 0abe7d1cc Docking: Fixed splitting/docking into a node that has buttons amended into tab bar. Windows were not moved correctly. (#5515) e21f462f6 Merge branch 'master' into docking 28a123ca4 Internals: Docking: make DockContextFindNodeByID() more visible (instead of DockBuilderGetNode) 0e95cf0de Fix appending to windows causing a child window to be inserted to g.WindowsFocusOrder which eventually causes a crash. (#5515, #3496, #4797) e926a664d TabBar: Allow closing entire TabBar (possible docking only) when it contains user-appended buttons. (#5515) e99c4fc66 Nav: fixes keyboard/gamepad nav actions running without the corresponding config flags (#5504). Fixes 8b8a61b. #4921, #4858, #787, #1599, #323) 2d38bc99b Internals: renamed recently added ImGuiInputReadFlags to ImGuiInputFlags. (Amend 8b8a61b) cb8ead1f7 Docking: Fix docked window contents not rendering when switching with CTRL+Tab. 6ab5fd1da Tables,Columns: fixed a layout issue where SameLine() prior to a row change would set the next row in such state where subsequent SameLine() would move back to previous row. 77637fd93 Docking, Nav: Fixed using gamepad/keyboard navigation not being able enter menu layer (#5463, #4792) 8731cc291 Examples: Vulkan: Add c++ version to CMakeLists (#5459) 1480bc5d4 Added ImGuiKey_MouseXXX aliases. (#4921) Reworked SetItemUsingMouseWheel() to use this for ActiveId. (#2891) 105bb3ef8 Legacy: clear g.ActiveIdUsingNavInputMask when active id is clear + Internals: added helpers GetKeyChordName(), ImGuiModFlags_All. 21fc57f2c Merge branch 'master' into docking 8b8a61bdf Removed io.NavInputs[] and ImGuiNavInput enum. Kept inline redirection code. (#4921, #4858, #787, #1599, #323) a7a25ee19 Tools: Item Picker: Mouse button can be changed by holding Ctrl+Shift. (#2673) 92d0924b8 Fixed build with IMGUI_DISABLE_OBSOLETE_KEYIO + made all examples comments refer to StyleColorsLight(). 4711b9b05 Add trailing commas to enum (to simplify the diff/patch of further additions) (#4537) 90ef32788 Reordered keys representing directions to follow a consistent L/R/U/D order everywhere. (#2625, #4921, #3724) f9ccdba35 Nav: Fix regression 93f02ee + Internals: Remove ImGuiNavReadMode_Pressed, ImGuiNavReadMode_Released. 93f02ee0c Nav: Fixed moving window with gamepad or keyboard when running at very high framerate + removed ImGuiNavDirSourceFlags_RawKeyboard. 82e10f1b6 Backends: Metal: Add dispatch synchronization. (#5447) 0b2da6791 Internals: clarified that GetInputTextState(0) can not return a pointer. Replaced a use of __APPLE__ with io.ConfigMacOSXBehaviors. 467a1cd4a Misc: io.Framerate moving average now converge in 60 frames instead of 120. (#5236, #4138) ad5aa5416 Backends, Viewport: Metal: Pull format from shared context. (#5403, #5437) 5d0deebba Merge branch 'master' into docking 67410d53f Backends: Metal, OSX: Various fixes (ARC / Autorelease fixes with metal-cpp and extensions). (#5403) 609b935a8 InputText: added experimental io.ConfigInputTextEnterKeepActive feature to make pressing Enter keep the input active and select all text. 0afc6cd31 Internals: InputTextEx() renames for correctness. enter_pressed -> validated, is_validate_enter -> is_enter_pressed 58eb40db7 Backends: GLFW: Fixed leftover static variable preventing from changing or reinitializing backend while application is running. (#4616, #5434) 873e9d35a Internals: renamed TreeNodeBehaviorIsOpen() to TreeNodeUpdateNextOpen(). Added internal TreeNodeSetOpen(id). (#5423) 24dfe6db8 Version 1.89 WIP 088ddef98 Tables: extracted some code into TableBeginContextMenuPopup() for easier reuse for appending into context menu. 9cd9c2eff Merge branch 'master' into docking 9aae45eb4 Version 1.88 d51e5d289 TabItem: revert support for SetNextItemOpen(true) at it creates too much ambiguity with p_open/close button vs Selected state. (#5262) c4b910175 TabBar: Tweak shrinking policy so that while resizing tabs that don't need shrinking keep their initial width more precisely. 4b9729614 TabBar: TabItem() now reacts to SetNextItemWidth() and SetNextItemOpen(true). (#5262) d3fd2630b Sliders: An initial click within the knob/grab doesn't shift its position. (#1946, #5328) + Adjust default GrabMinSize. f27af1b20 Internals: SliderBehaviorT: Minor refactor, clearer 0.0/1.0 early out. Should be no-op from user's point of view. 90e8404a7 Update README.md 9764adc7b Docking: Amend 24dfebf. Fixed incorrect focus highlight on docking node with nested hierarchies. 37a07858a Nav: Fixed inability to cancel nav in modal popups. (#5400) 506717390 Docking, Modal: Fixed a crash when opening popup from a parent which is being docked on the same frame. (#5401) 101aec95d Backends: SDL+GLFW, Examples: SDL+Metal, GLFW+Metal: Fix viewport support with Metal backend. 07efd7cc2 Renamed IMGUI_DISABLE_METRICS_WINDOW to IMGUI_DISABLE_DEBUG_TOOLS. e135cdbc2 Merge branch 'master' into docking + update for IMGUI_DEBUG_LOG calls. 08572189f MovingWindow auto-cancelled if active id is stolen (instead of ill-defined bahavior + assert in docking). 27343efb0 Nav, Focus: Changed SetKeyboardFocusHere() to not behave if a drag or window moving is in progress + move KeepAliveID() call from Scrollbar() to ScrollbarEx() ddcff1034 Settings: Fixed some SetNextWindowPos/SetNextWindowSize API calls not marking settings as dirty. 6cac48df3 Drag, Slider: rework slightly or CTRL+Click or SetKeyboardFocusHere() will show 1 change of active id in the log (rather than a set,clear,set sequence) dd2850083 Debug: Add more log. Reworked IMGUI_DEBUG_PRINT IMGUI_DEBUG_PRINTF. Added internal IsDragDropActive() helper. 24dfebf45 Docking: Fixed incorrect focus highlight on docking node when focusing empty central node or a child window which was manually injected into a dockspace window. 2ed9e21eb Nav, Internals: wrap changes to g.NavWindow into a helper function to help track/log changes. 1d6e34f3f Debug: Added ShowDebugLogWindow(). ec2c805e4 Backends: support for unity builds for dx10/dx11/dx12 backends (#5387) e900ca355 Merge branch 'master' into docking 076d8fc86 Nav: Fixed issues with nav request being transferred to another window when calling SetKeyboardFocusHere() and simultaneous changing window focus. (#4449) 0b1bcfcc2 Menus: Separate menu sets by nav layer. (#3496, #4797) + Demo: Remove incorrect and useless suggestion to use PushID(). a35e87697 InputText: Amends and tidying up: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 530332dfb InputText: Fixed undo/redo state corruption when editing buffer in user callback. (#4947, #4949) 23a785aeb Internals: wrapped used of g.TempBuffer into ImFormatStringToTempBuffer/ImFormatStringToTempBufferV helpers. 64d6c3056 InputText: Fixed an undo-state corruption issue when editing buffer before reactivating item. (#4947) + Metrics: Added "InputText" section. 74f02703e Misc comments + Demo: use IsItemVisible() when using direct ImDrawList calls. 4789c7e48 Misc: Fix custom assertion macro failing to compile imgui.cpp (#5378) 65c4c0a49 IO: Added SetAppAcceptingEvents() function (#4921, #4858) 17b8c3b6e Demo: Removed redundant window flag (#5367) 7354009a7 Backends: Metal: Fixed null dereference inside command buffer completion handler. (#5363, #5365) 74f7ac04a Misc: Fix font compressor utility warnings. (#5359) f58bd817e Tables: Fix drawcall merging of last column. (#4843, #4844) 7b5a8e4f2 Merge branch 'master' into docking (wanted for #4468, #3381, #2981, #4825, #4832, #5127) e23c5edd5 Settings: Fixed out-of-bounds read when .ini file on disk is empty. (#5351) 697ce2d67 InputText: Fixed a one-frame display glitch where pressing Escape to revert after a deletion would lead to small garbage being displayed for one frame. (#3008) 5139fb7e1 Docs: Add index ae2fb557f Docs: Update templates with link to Contributing guidelines. Add numerical version number in demo. Moved. (#5337) 814ecedd1 Docs: creates CONTRIBUTING.md (#5337) e5b2286ca Backends: OpenGL3: Fix apple TARGET_OS_* not defined warning. (#5321) ca222d30c Backends: OpenGL: Partially revert 1.86 change of using glBufferSubData(): now only done on Intel GPUs. (#4468, #3381, #2981, #4825, #4832, #5127) 7bf07d252 Renamed CaptureMouseFromApp() and CaptureKeyboardFromApp() to SetNextFrameWantCaptureMouse() and SetNextFrameWantCaptureKeyboard(). Added demo. (#5304, #4831, #4480, #533) cb56b0b23 Removed leftover KeepAliveID() call in GetIDWithSeed() variant. (#5181) + doc tweaks. 250333d89 Docking: Fix unhiding tab bar regression. (#5325, #5181) 36055213c Docking: Fixed moving window being interrupted when undocing a window with "io.ConfigDockingAlwaysTabBar = true". (#5324) e346059ee IO: Fixed input queue trickling of mouse wheel events. (#4921, #4821) 6b5a2426d Merge branch 'master' into docking 60bea052a Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. (amends) b7686a88e Backends: OpenGL3: Fix state corruption on OpenGL ES 2.0 due to not preserving GL_ELEMENT_ARRAY_BUFFER_BINDING and vertex attribute states. 507a87354 DrawList: Circles disappear when using a radius < 0.5f (#3491) 9e0517a13 DrawList: Fixed divide-by-zero or glitches with Radius/Rounding values close to zero. (#5249, #5293, #3491) 2fa60bec2 Examples: Apple+OpenGL: Fix build. 693b4c57f Backends: OSX: Implement ImGui_ImplOSX_ShowWindow(). (#5299) 9779cc2fe Internals: shallow changes to simplify diff of upcoming commits. Should have no side-effect. 4db55f88e Changed FONT.md edit to blob (#5290) d768b8c81 Backends: Metal: Align code more closely with other backends. OSX: Add missing return for mouse pos events. 55f898939 Docs update, binaries link + Backend: Allegro: fix warning (#5281) 6d27fecce Debug: added DebugTextEncoding() to help diagnose between text encoding issues and font loading issues. Simplified code + extracted DebugNodeFontGlyph(). e66889083 Debug: added encoding viewer in Metrics. d666a1d47 Backends: OSX, Metal: Amend d111133, tidying up, remove unused, misc tweaks. . (#4821, #2778) 6868d1166 Backends: OSX, Metal: Added multi-viewports support. (#4821, #2778) 414165d23 Merge branch 'master' into docking e66fc2205 Backends: OSX: Removed ImGui_ImplOSX_HandleEvent() from backend API. Move event tracking (desktop only) to OSX backend. (#4821) 26f817807 Backends: Vulkan: Don't use VK_PRESENT_MODE_MAX_ENUM_KHR as specs state it isn't part of the API. (#5254) d58b8414b Backends: OSX, Metal: Tweaks. Use preferred method of obtaining a timestamp. (#4821) 3e5dde9a2 Tables: Fixed incorrect auto-fit of parent windows when using non-resizable weighted columns. (#5276) 709bc03d6 Backends: GLFW: fixed ImGui_ImplGlfw_TranslateUntranslatedKey() for lower case letters on OSX (#5260, #5261) 314c7bd12 Internals: renamed ImGuiInputReadMode to ImGuiNavReadMode (internals) to avoid ambiguity with upcoming flags. + minor tweak e54db4ee7 Backends: OSX, Metal: Store backend data in a per-context struct, allowing to use these backends with multiple contexts. (#5203, #5221, #4141) 04689979b Examples: Emscripten+WebGPU: Fix for latest spec rename of WGPURenderPassColorAttachment::clearColor to ::clearValue (#3632) ec4868145 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) b5b704d37 Windows: Fixed first-time windows appearing in negative coordinates. (#5215, #3414) 8dd542518 Merge branch 'master' into docking 5b29d1478 Layout: Fixed mixing up SameLine() and SetCursorPos() together. SameLine() is a stateful. eda7792b1 Internals: swapped blocks in TextEx() to make it easier to step through common cases. Tweak demo. 28b2089ee Internals: moved ItemSize() variant to inline + comment. + Tidying up todo list (#5191) 14ca75d4e Backends: SDL, OpenGL3: Small fixes for AmigaOS4. (#5190) + Allow redefining IM_COL32_XXX layout macros. (#5190, #767, #844) 088487a3d Nav: Fixed nav movement in a scope with only one disabled item from focusing the disabled item. (#5189) fc203c7d7 Minor fix to sastisfy PVS-Studio warning. (amend, 3nd attempt: this is a false positive from PVS studio) 6d15a506f Internals: removed GetIDNoKeepAlive() now that it is the same as GetID(). (#5181) 90386780e Misc: Fixed calling GetID("label") _before_ a widget emitting this item inside a group (such as InputInt()) from causing an assertion when closing the group. (#5181). 937d07332 Updated comment about Edit.NavigateTo to Edit.GoToAll. (#5179) f7f30476d Added comments about requirement for bilinear filtering. (#5156, #3245) + Backends: SDL_Renderer: Explicitely call SDL_SetTextureScaleMode(). (#4927) 505f19e3b Merge branch 'master' into docking 2c03aac6d Renamed ImGuiKeyModFlags to ImGuiModFlags (Breaking but technically never advertised type) a472e8834 InputScalar: Automatically allow hexadecimal/scientific input when format is adequate. c521883be Sliders, Drags: Fixed manual input when using hexadecimal display format string. (#5165, #3133) 508c9aaf6 Sliders, Drags: Fixed using hexadecimal display format strings (pretty much never worked). (#5165, #3133) f5c5926fb Internals: remove obsolete variants of RenderArrow(), RenderBullet(), ImHash() + misc comments. 88fbc31ee stb_truetype: fix a division by zero (unused chain of result, but triggering debuggers). (#5139, #5075) 2747a8ca4 Turned ImVec2 to const ref to RenderChar(), RenderText(), ColorButton(), PushClipRect(). for consistency. Comments about polygon filling winding order. 0dec43070 Menus: Adjusted BeginMenu() closing logic so hovering void or non-MenuItem() in parent window always lead to menu closure. 2d76b09d2 Backends: Metal: Conditional check, amend 7602277 (#5122, #5123) 1ba290501 Update README, quote, mission statement 3587ee492 Viewports: store Viewport field in ImGuiWindow to facilitate using code accross branches + fix PVS warnings. dfbe938e5 InputText: Fixed pressing Tab emitting two tabs characters. (#2467, #1336) 16ddc1698 Fixed creating multiple-context (regression in 28ba54a). (#5135) 377b864bb Merge branch 'master' into docking 1ad8ad623 Backends: GLFW: Fixed keyboard modifiers events being reported incorrectly on Linux/X11. 7d7bf993b ImDrawList: Fix texture-based anti-aliasing with RGBA textures (#5132, #3245) 3c0787950 Backends: OSX: Inputs: Monitor NSKeyUp events to catch missing keyUp for key when user press Cmd + key (#5128) 9b0c26b0b Backends: SDL: Fix more dragging issues. SDL_CaptureMouse() is essentially broken. (#5012, #5082) c5f67218b Backends: SDL: Fix multi-viewport dragging issue with SDL on some systems. (v2 for master, using bd->MouseButtonsDown == 0) (#5012, #5082) 7602277c8 Backends: Metal: Remove weak ref (#5122, #5123) 31e77eacd Backends: SDL: Add extra mouse buttons handling (#5125) 6fae29679 Examples: Emscripten: Fix build. (#3632) 28ba54a32 Internals: add AddSettingsHandler(), RemoveSettingsHandler(). fd06ed833 Misc: tweaks + fix warnings on backends withtout -wno-memaccess (#4995, #5104) 0cff5ac5a Updated stb_textedit.h from 1.20 to 1.26 (many fixes). (#5075) de451d447 Updated stb_textedit.h from 1.13 to 1.14. (#5075) 279db5584 Updated stb_rect_pack.h from 1.00 to 1.01. (#5075) 3deb92c2c Add IMGUI_STB_SPRINTF_FILENAME to support custom stb_printf.h include path (#5068, #2954) 0f1493357 Tables: Fixed incorrect border height used for logic when resizing one of several synchronized instance of a same table ID, when instances have a different height. (#3955, #3565) 6315716f2 Backends: Glut: Fix comparison operator precedence. 1e18da5c3 Backends, Examples: Add comments about using WndProc handler and WantCaptureXXX flags. (#5061) 54fb051e5 ColorEdit: Fixed text baseline alignment after a SameLine() after a ColorEdit() with visible label. git-subtree-dir: deps/imgui git-subtree-split: 2db79d0868f7b02d26f7557a72504a0b6f844937
2024-05-31 19:18:26 -05:00
- If you are experienced with Dear ImGui and C++, look at [GitHub Issues](https://github.com/ocornut/imgui/issues), [GitHub Discussions](https://github.com/ocornut/imgui/discussions), the [Wiki](https://github.com/ocornut/imgui/wiki), read [docs/TODO.txt](https://github.com/ocornut/imgui/blob/master/docs/TODO.txt), and see how you want to help and can help!
- Disclose your usage of Dear ImGui via a dev blog post, a tweet, a screenshot, a mention somewhere, etc.
You may post screenshots or links in the [gallery threads](https://github.com/ocornut/imgui/issues/7503). Visuals are ideal as they inspire other programmers. Disclosing your use of Dear ImGui helps the library grow credibility, and helps other teams and programmers with taking decisions.
- If you have issues or if you need to hack into the library, even if you don't expect any support it is useful that you share your issues or sometimes incomplete PR.
##### [Return to Index](#index)