- - Update to 1.90.9
Removed old nested structure: renaming ImGuiStorage::ImGuiStoragePair type to ImGuiStoragePair (simpler for many languages). No significant nested type left.
BeginChild: added ImGuiChildFlags_NavFlattened as a replacement for the window flag ImGuiWindowFlags_NavFlattened: the feature only ever made sense for BeginChild() calls anyhow. (#7687)
old: BeginChild("Name", size, 0, ImGuiWindowFlags_NavFlattened);
new: BeginChild("Name", size, ImGuiChildFlags_NavFlattened, 0)
Kept inline redirection flag (will obsolete).
Style: renamed tab colors for clarity and consistency with other changes: (#261, #351)
ImGuiCol_TabActive -> ImGuiCol_TabSelected
ImGuiCol_TabUnfocused -> ImGuiCol_TabDimmed
ImGuiCol_TabUnfocusedActive -> ImGuiCol_TabDimmedSelected
Kept inline redirecting enums (will obsolete).
IO: io.ClearInputKeys() (first exposed in 1.89.8) doesn't clear mouse data. Newly added io.ClearInputMouse() does. (#4921)
Drag and Drop: renamed ImGuiDragDropFlags_SourceAutoExpirePayload to ImGuiDragDropFlags_PayloadAutoExpire. Kept inline redirecting enum (will obsolete). (#1725, #143)
IO: do not disable io.ConfigWindowsResizeFromEdges (which allow resizing from borders and lower-left corner) when ImGuiBackendFlags_HasMouseCursors is not set by backend. The initial reasoning is that resizing from borders feels better when correct mouse cursor shape change as honored by backends. Keeping this enabling will hopefully increase pressure on third-party backends to set ImGuiBackendFlags_HasMouseCursors and honor changes of ImGui::GetMouseCursor() value. (#1495)
IO: do not claim io.WantCaptureMouse=true on the mouse release frame of a button which was pressed over void/underlying app, which is consistent/needed to allow the mouse up event of a drag over void/underlying app to catch release. (#1392)
IO: Added io.ClearInputMouse() to clear mouse state. (#4921)
Windows: BeginChild(): fixed a glitch when during a resize of a child window which is tightly close to the boundaries of its parent (e.g. with zero WindowPadding), the child position could have temporarily be moved around by erroneous padding application. (#7706)
TabBar, Style: added ImGuiTabBarFlags_DrawSelectedOverline option to draw an horizontal line over selected tabs to increase visibility. This is used by docking. Added corresponding ImGuiCol_TabSelectedOverline and ImGuiCol_TabDimmedSelectedOverline colors.
Tables: added TableGetHoveredColumn() to public API, as an alternative to testing for TableGetColumnFlags(column) & ImGuiTableColumnFlags_IsHovered on each column. (#3740)
Disabled, Inputs: fixed using Shortcut() or SetNextItemShortcut() within a disabled block bypassing the disabled state. (#7726)
Disabled: Reworked 1.90.8 behavior of Begin() not inheriting current BeginDisabled() state, to make it that only tooltip windows are temporarily clearing it. (#211, #7640)
Drags: added ImGuiSliderFlags_WrapAround flag for DragInt(), DragFloat() etc. (#7749)
Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern sets active id so a multi-frame extern source doesn't interfere with hovered widgets. (#143)
Drag and Drop: BeginDragDropSource() with ImGuiDragDropFlags_SourceExtern does not assume a mouse button being pressed. Facilitate implementing cross-context drag and drop. (#143)
Drag and Drop: Added ImGuiDragDropFlags_PayloadNoCrossContext/ImGuiDragDropFlags_PayloadNoCrossProcess flags as metadata to specify that a payload may not be copied outside the context/process by some logic aiming to copy payloads around.
Drag and Drop: Fixes an issue when elapsing payload would be based on last payload frame instead of last drag source frame, which makes a difference if not resubmitting payload every frame. (#143)
Debug Tools: Metrics/Debugger: Browsing a Storage perform hover lookup on identifier.
Viewports: Backported void* ImGuiViewport::PlatformHandle from docking branch for use by backends.
imgui_freetype: Fixed divide by zero while handling FT_PIXEL_MODE_BGRA glyphs. (#7267, #3369)
Backends: OpenGL2, OpenGL3: ImGui_ImplOpenGL3_NewFrame() recreates font texture if it has been destroyed by ImGui_ImplOpenGL3_DestroyFontsTexture(). (#7748)
Backends: SDL3: Update for API removal of keysym field in SDL_KeyboardEvent. (#7728)
Backends: SDL3: Update for SDL_StartTextInput()/SDL_StopTextInput() API changes. (#7735)
Backends: SDL3: Update for SDL_SetTextInputRect() API rename. (#7760, #7754)
Backends: SDLRenderer3: Update for SDL_RenderGeometryRaw() API changes. (SDL#9009).
Backends: Vulkan: Remove Volk/ from volk.h #include directives. (#7722, #6582, #4854)
Examples: SDL3: Remove use of SDL_HINT_IME_NATIVE_UI since new SDL_HINT_IME_IMPLEMENTED_UI values has a more suitable default for our case case.
Examples: GLFW+Vulkan, SDL+Vulkan: handle swap chain resize even without Vulkan returning VK_SUBOPTIMAL_KHR, which doesn't seem to happen on Wayland. (#7671)
- Changes of 1.90.8
Reordered various ImGuiInputTextFlags values. This should NOT be breaking unless you are using generated headers that have values not matching the main library.
Removed ImGuiButtonFlags_MouseButtonDefault_ = ImGuiButtonFlags_MouseButtonLeft from imgui.h, was mostly unused and misleading.
Inputs: Fixed IsMouseClicked(..., repeat=true); broken in 1.90.7 on 2024/05/22. (due to an internal api parameter swap, repeat wouldn't be honored and ownership would be accidentally checked even though this api is meant to not
check ownership). (#7657)
Windows: fixed altering FramePadding mid-frame not correctly affecting logic responsible for honoring io.ConfigWindowsMoveFromTitleBarOnly. (#7576, #899)
Scrollbar: made scrolling logic more standard: clicking above or below the grab scrolls by one page, holding mouse button repeats scrolling. (#7328, #150)
Scrollbar: fixed miscalculation of vertical scrollbar visibility when required solely by the presence of an horizontal scrollbar. (#1574)
InputScalar, InputInt, InputFloat: added ImGuiInputTextFlags_ParseEmptyRefVal to parse an empty field as zero-value. (#7305)
InputScalar, InputInt, InputFloat: added ImGuiInputTextFlags_DisplayEmptyRefVal to display a zero-value as empty. (#7305)
Popups: fixed an issue preventing to close a popup opened over a modal by clicking over void (it required clicking over the visible part of the modal). (#7654)
Tables: fixed an issue where ideal size reported to parent container wouldn't correctly take account of inner scrollbar, affecting potential auto-resize of parent container. (#7651)
Tables: fixed a bug where after disabling the ScrollY flag for a table, previous scrollbar width would be accounted for. (#5920)
Combo: simplified Combo() API uses a list clipper (due to its api it wasn't previously trivial before we added clipper.IncludeItemByIndex() function).
Disabled: nested tooltips or other non-child window within a BeginDisabled() block disable the disabled state. (#211, #7640)
Misc: made ImGuiDir and ImGuiSortDirection stronger-typed enums.
Backends: SDL3: Update for SDL_SYSTEM_CURSOR_xxx api renames. (#7653)
RangeSelect/MultiSelect: Box-Select: when dragging from void, first hit item sets NavId so navigation can resume from that spot.
RangeSelect/MultiSelect: (breaking) Added optional 'items_count' parameter to BeginMultiSelect(). Will enable extra features, and remove equivalent parameter from ImGuiSelectionBasicStorage::ApplyRequests().
RangeSelect/MultiSelect: (breaking) renamed ImGuiMultiSelectFlags_BoxSelect -> ImGuiMultiSelectFlags_BoxSelect1d, ImGuiMultiSelectFlags_BoxSelect2d -> ImGuiMultiSelectFlags_BoxSelect.
RangeSelect/MultiSelect: (breaking) ImGuiSelectionBasicStorage: renamed AdapterData to UserData.
RangeSelect/MultiSelect: ImGuiSelectionBasicStorage: added GetStorageIdFromIndex() method indirection to be easier on the reader.
RangeSelect/MultiSelect: ImGuiSelectionBasicStorage: fixed Swap() helper.
RangeSelect/MultiSelect: added ImGuiSelectionExternalStorage helper. Simplify checkboxes/bool demo.
RangeSelect/MultiSelect: Box-select: fixes for checkboxes support.
RangeSelect/MultiSelect: mark parent child window as navigable into, with highlight visible when pressing Escape.
- Changes of 1.90.7
Inputs: on macOS X, Cmd and Ctrl keys are now automatically swapped by io.AddKeyEvent(), as this naturally align with how macOS X uses those keys. (#2343, #4084, #5923, #456)
Effectively it means that e.g. ImGuiMod_Ctrl | ImGuiKey_C is a valid idiomatic shortcut for both Windows and Mac style users.
It shouldn't really affect your code unless you had explicit/custom shortcut swapping in place for macOS X apps in your input logic.
Removed ImGuiMod_Shortcut which was previously dynamically remapping to Ctrl or Cmd/Super. It is now unnecessary to specific cross-platform idiomatic shortcuts. Kept symbols redirecting ImGuiMod_Shortcut to ImGuiMod_Ctrl (will obsolete).
Commented out obsolete symbols renamed in 1.88 (May 2022):
CaptureKeyboardFromApp() -> SetNextFrameWantCaptureKeyboard()
CaptureMouseFromApp() -> SetNextFrameWantCaptureMouse()
Backends: SDL_Renderer2/SDL_Renderer3: ImGui_ImplSDLRenderer2_RenderDrawData() and ImGui_ImplSDLRenderer3_RenderDrawData() now takes a SDL_Renderer* parameter. This was previously overlooked from the API but it will allow eventual support for multi-viewports.
Extra Breaking changes IF AND ONLY IF you were using imgui_internal.h versions of Shortcut() or owner-aware versions of IsKeyPressed(), IsKeyChordPressed(), IsMouseClicked() prior to this version. (Open for details)
Windows: BeginChild(): fixed visibility of fully clipped child windows and tables from Test Engine.
Windows: BeginChild(): fixed auto-fit calculation when using either (not both) ResizeX/ResizeY and double-clicking on a border. Calculation incorrectly didn't always account for scrollbar as it assumed the other axis would also be auto-fit. (#1710)
Inputs: added shortcut and routing system in public API. (#456, #2637)
Most of the infrastructure have been in place for a few versions. Recent changes/fixes allowed to make it public.
The general idea is that several callers may register interest in a shortcut, and only one owner gets it.
in Parent: call Shortcut(Ctrl+S) // When Parent is focused, only Parent gets the shortcut.
in Child1: call Shortcut(Ctrl+S) // When Child1 is focused, only Child1 gets the shortcut (Child1 overrides Parent shortcuts)
in Child2: no call // When Child2 is focused, only Parent gets the shortcut.
The whole system is order independent, so if Child1 makes its calls before Parent, results will be identical. This is an important property as it facilitate working with foreign code or larger codebase.
Added Shortcut() function. e.g. Using ImGui::Shortcut(ImGuiMod_Ctrl | ImGuiKey_C) with default policy:
checks that CTRL+C is pressed,
and that current window is in focus stack,
and that no other requests for CTRL+C have been made from higher priority locations (e.g. deeper in the window/item stack).
Added SetNextItemShortcut() to set a shortcut to locally or remotely press or activate an item (depending on specified routing policy: using ImGuiInputFlags_RouteGlobal the item shortcut may be executed even if its window is not in focus stack). Items like buttons are not fully activated, in the sense that they get pressed but another active item, e.g. InputText() won't be deactivated.
Added routing policies for Shortcut(), SetNextItemShortcut(): (#456, #2637)
ImGuiInputFlags_RouteFocused: focus stack route (default)
ImGuiInputFlags_RouteActive: only route to active item
ImGuiInputFlags_RouteGlobal: route globally, unless a focus route claim shame shortcut.
ImGuiInputFlags_RouteAlways: no routing submission, no routing check.
Added other shortcut/routing options: (#456, #2637)
ImGuiInputFlags_Repeat: for use by Shortcut() and by upcoming rework of various input functions (which are still internal for now).
ImGuiInputFlags_Tooltip: for SetNextItemShortcut() to show a tooltip when hovering item.
ImGuiInputFlags_RouteOverFocused: global route takes priority over focus route.
ImGuiInputFlags_RouteOverActive: global route takes priority over active item.
ImGuiInputFlags_RouteUnlessBgFocused: global route disabled if no imgui window focused.
ImGuiInputFlags_RouteFromRootWindow: route evaluated from the point of view of root window rather than current window.
Inputs: (OSX) Fixes variety of code which inconsistently required using Ctrl instead of Cmd.
e.g. Drags/Sliders now use Cmd+Click to input a value. (#4084)
Some shortcuts still uses Ctrl on Mac: e.g. Ctrl+Tab to switch windows. (#4828)
Inputs: (OSX) Ctrl+Left Click alias as a Right click. (#2343)
Inputs: Fixed ImGui::GetKeyName(ImGuiKey_None) from returning "N/A" or "None" depending on value of IMGUI_DISABLE_OBSOLETE_KEYIO. It always returns "None".
Nav: fixed holding Ctrl or gamepad L1 from not slowing down keyboard/gamepad tweak speed. Broken during a refactor refactor for 1.89. Holding Shift/R1 to speed up wasn't broken.
Tables: fixed cell background of fully clipped row overlapping with header. (#7575, #7041)
Demo: Added "Inputs & Focus -> Shortcuts" section. (#456, #2637)
Demo: Documents: Added shortcuts and renaming tabs/documents. (#7233)
Examples: Win32+DX9,DX10,DX11,DX12: rework main loop to handle minimization and screen locking without burning resources by running unthrottled code. (#2496, #3907, #6308, #7615)
Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of Dear ImGui. If you get an assert it most likely mean you have a build issue, read comments near the assert. (#7568)
Backends: Win32: undo an assert introduced in 1.90.6 which didn't allow WndProc handler to be called before backend initialization. Because of how ::CreateWindow() calls in WndProc it is facilitating to not assert. (#6275)
Backends, Examples: SDL3: updates for latest SDL3 API changes. (#7580)
- Changes of 1.90.6
TreeNode: Fixed a layout inconsistency when using a empty/hidden label followed by a SameLine() call. (#7505, #282)
With the fix, IF you were successfully using TreeNode("")+SameLine(); you will now have extra spacing between your TreeNode and the following item. You'll need to change the SameLine() call to SameLine(0,0) to remove this extraneous spacing. This seemed like the more sensible fix that's not making things less consistent. (Note: when using this idiom you are likely to also use ImGuiTreeNodeFlags_SpanAvailWidth).
Windows: Changed default ClipRect to extend to windows' left and right borders, instead of adding arbitrary WindowPadding.x * 0.5f space on left and right. That ClipRect half-padding was arbitrary/confusing and inconsistent with Y axis. It also made it harder to draw items covering whole window without pushing an extended ClipRect. Some items near windows left and right edge that used to be clipped may be partly more visible. (#3312, #7540, #3756, #6170, #6365)
Windows: Fixed subsequent Begin() append calls from setting last item information for title bar, making it impossible to use IsItemHovered() on a Begin()-to-append, and causing issue bypassing hover detection on collapsed windows. (#7506, #823)
Fonts: Fixed font ascent and descent calculation when a font hits exact integer values. It is possible that some prior manual use of ImFontConfig::GlyphOffset may become duplicate with this fix. (#7399, #7404)
TreeNode: Added ImGuiTreeNodeFlags_SpanTextWidth to make hitbox and highlight only cover the label. (#6937)
Tables: Angled headers: fixed multi-line label display when angle is flipped. (#6917)
Tables: Angled headers: added style.TableAngledHeadersTextAlign and corresponding ImGuiStyleVar_TableAngledHeadersTextAlign variable. Default to horizontal center. (#6917)
ProgressBar: Added support for indeterminate progress bar by passing an animated negative fraction, e.g. ProgressBar(-1.0f * GetTime()). (#5316, #5370, #1901)
Text, DrawList: Improved handling of long single-line wrapped text. Faster and mitigate issues with reading vertex indexing limits with 16-bit indices. (#7496, #5720)
Backends: OpenGL3: Detect ES3 contexts on desktop based on version string, to e.g. avoid calling glPolygonMode() on them. (#7447)
Backends: OpenGL3: Update loader for Linux to support EGL/GLVND. (#7562)
Backends: Vulkan: Added convenience support for Volk via IMGUI_IMPL_VULKAN_USE_VOLK define. (you could always use IMGUI_IMPL_VULKAN_NO_PROTOTYPES + ImGui_ImplVulkan_LoadFunctions() as well). (#6582, #4854)
Backends: SDL3: Fixed text inputs. Re-enable calling SDL_StartTextInput()/SDL_StopTextInput() as SDL3 no longer enables it by default. (#7452, #6306, #6071, #1953)
Examples: GLFW+Vulkan, SDL+Vulkan: Added optional support for Volk. (#6582, #4854)
Examples: GLFW+WebGPU: Added support for WebGPU-native/Dawn (#7435, #7132)
Examples: GLFW+WebGPU: Renamed example_emscripten_wgpu/ to example_glfw_wgpu/. (#7435, #7132)
- Changes of 1.90.5
More formally obsoleted GetKeyIndex() when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is set.
It has been unnecessary and a no-op since 1.87 (it returns the same value as passed when used with a 1.87+ backend using io.AddKeyEvent() function). (#4921)
Reminder: IsKeyPressed(GetKeyIndex(ImGuiKey_XXX)) --> IsKeyPressed(ImGuiKey_XXX)
ImDrawList: Merged the radius_x/radius_y parameters in AddEllipse(), AddEllipseFilled() and PathEllipticalArcTo() into a single ImVec2 parameter. Exceptionally, because those functions were added recently in 1.90, we are not adding inline redirection functions. The transition is easy and should affect few users. (#2743, #7417)
Windows: Scrollbar visibility decision uses current size when both size and contents size are submitted by API. (#7252)
Windows: Double-click to collapse may be disabled via key-ownership mechanism. (#7369)
Windows: BeginChild(): Extend outer resize borders to the edges when there are no corner grips. Essentially affects resizable child windows. (#7440, #1710)
Windows: BeginChild(): Resizing logic for child windows evaluates whether per-axis clamping should be applied based on parent scrollbars, not child scrollbars. (#7440, #1710) Adjust those resizing limits to match window padding rather than inner clipping rectangle.
Tables: Fixed auto-width columns when using synced-instances of same table, width of one instance would bleed into next one instead of sharing their widths. (#7218)
Tables: Angled headers: fixed border hit box extending beyond when used within non-scrollable tables. (#7416)
Tables: Angled headers: fixed borders not moving back up after TableAngleHeadersRow() stops being called. (#7416)
Tables: Angled headers: rounding header size to nearest integers, fixes some issues when using clipper.
Menus, Popups: Fixed an issue where sibling menu popups re-opening in successive frames would erroneously close the window. While it is technically a popup issue it would generally manifest when fast moving the mouse bottom to top in a sub-menu. (#7325, #7287, #7063)
ProgressBar: Fixed passing fraction==NaN from leading to a crash. (#7451)
ListBox: Fixed text-baseline offset when using SameLine()+Text() after a labeled ListBox().
Drags, Sliders, Inputs: Fixed io.PlatformLocaleDecimalPoint decimal point localization feature not working regression from 1.90.1. (#7389, #6719, #2278)
Style: Added ImGuiStyleVar_TabBorderSize, ImGuiStyleVar_TableAngledHeadersAngle for consistency. (#7411)
DrawList: Added AddConcavePolyFilled(), PathFillConcave() concave filling. (#760) Note that only simple polygons (no self-intersections, no holes) are supported.
DrawList: Allow AddText() to accept null ranges. (#3615, 7391)
Docs: added more wiki links to headers of imgui.h/imgui.cpp to facilitate discovery
of interesting resources, because github doesn't allow Wiki to be crawled by search engines.
OBS-URL: https://build.opensuse.org/request/show/1189723
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=24
- update to 1.90.4:
* Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API
from not working on windows with the
ImGuiWindowFlags_NoNavInputs flag
(regression in 1.90.2, which among other things broke
imgui_memory_editor).
* Menus, Popups: Fixed an issue where hovering a parent-menu
upward would erroneously close the window.
* Popups: Fixed resizable popup minimum size being too small.
Standardized minimum size logic. (#7329).
* Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are
properly handled by BeginPopupModal(). (#7340)
* Tables: Angled headers: fixed support for multi-line labels.
* Tables: Angled headers: various fixes to accurately handle
CellPadding changes. (#6917)
* Tables: Angled headers: properly registers horizontal
component of angled headers for auto-resizing of columns. (#6917)
* Tables: Angled headers: fixed TableAngledHeadersRow()
incorrect background fill drawn too low, particularly visible
with tables that have no scrolling. (#6917)
* ProgressBar: Fixed a minor tesselation issue when rendering
rounded progress bars, where in some situations the rounded
section wouldn't follow regular tesselation rules.
* Debug Tools: Item Picker: Promoted
ImGui::DebugStartItemPicker() to public API. (#2673)
* Debug Tools: Item Picker: Menu entry visible in Demo->Tools
but greyed out unless io.ConfigDebugIsDebuggerPresent is set.
* Misc: Added optional alpha multiplier parameter to
GetColorU32(ImU32) variant.
* Demo: Custom Rendering: better demonstrate PathArcTo(),
OBS-URL: https://build.opensuse.org/request/show/1161169
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=11
* Nav: Fixed SetKeyboardFocusHere() or programmatic tabbing API
from not working on windows with the
ImGuiWindowFlags_NoNavInputs flag
(regression in 1.90.2, which among other things broke
imgui_memory_editor).
* Menus, Popups: Fixed an issue where hovering a parent-menu
upward would erroneously close the window.
* Popups: Fixed resizable popup minimum size being too small.
Standardized minimum size logic. (#7329).
* Modals: Temporary changes of ImGuiCol_ModalWindowDimBg are
properly handled by BeginPopupModal(). (#7340)
* Tables: Angled headers: fixed support for multi-line labels.
* Tables: Angled headers: various fixes to accurately handle
CellPadding changes. (#6917)
* Tables: Angled headers: properly registers horizontal
component of angled headers for auto-resizing of columns. (#6917)
* Tables: Angled headers: fixed TableAngledHeadersRow()
incorrect background fill drawn too low, particularly visible
with tables that have no scrolling. (#6917)
* ProgressBar: Fixed a minor tesselation issue when rendering
rounded progress bars, where in some situations the rounded
section wouldn't follow regular tesselation rules.
* Debug Tools: Item Picker: Promoted
ImGui::DebugStartItemPicker() to public API. (#2673)
* Debug Tools: Item Picker: Menu entry visible in Demo->Tools
but greyed out unless io.ConfigDebugIsDebuggerPresent is set.
* Misc: Added optional alpha multiplier parameter to
GetColorU32(ImU32) variant.
* Demo: Custom Rendering: better demonstrate PathArcTo(),
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=22
- update to 1.10.1:
* imgui_freetype: commented out ImGuiFreeType::BuildFontAtlas()
obsoleted in 1.81.
Prefer using #define IMGUI_ENABLE_FREETYPE or see commented
code for manual calls.
* Removed CalcListClipping() marked obsolete in 1.86. (#3841)
Prefer using ImGuiListClipper which can return non-contiguous
ranges.
* Internals, Columns: commented out legacy ImGuiColumnsFlags_XXX
symbols redirecting to ImGuiOldColumnsFlags_XXX
* Commented out obsolete ImGuiKey_KeyPadEnter redirection to
ImGuiKey_KeypadEnter. (#2625, #7143)
* Navigation (Keyboard/gamepad):
- Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are
not overridden back to true when navigation is enabled.
SetNextFrameWantCaptureKeyboard() is always higher priority.
- Nav: Activation can also be performed with Keypad Enter.
* Drag and Drop:
- Fixed drop target highlight on items temporarily pushing a
widened clip rect (namely Selectables and Treenodes using
SpanAllColumn flag) so the highlight properly covers
all columns. (#7049, #4281, #3272)
* InputText:
- InputTextMultiline: Fixed Tab character input not repeating
- InputTextMultiline: Tabbing through a multi-line text editor
which allows Tab character inputs (using the
ImGuiInputTextFlags_AllowTabInput flag) doesn't
automatically activate it, in order to allow passing
through multiple widgets easily.
* Drags, Sliders, Inputs:
OBS-URL: https://build.opensuse.org/request/show/1140581
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=16
- update to 1.90:
* BeginChild(): Upgraded 'bool border = false' parameter to
'ImGuiChildFlags flags = 0'.
* Added ImGuiChildFlags_Border value. As with our prior
"bool-to-flags" API updates, the ImGuiChildFlags_Border
value is guaranteed to be == true forever to ensure a
smoother transition, meaning all existing calls will still
work.
* BeginChildFrame()/EndChildFrame(): removed functions in
favor of using BeginChild() with the ImGuiChildFlags_FrameStyle
flag.
* IO: Removed io.MetricsActiveAllocations introduced in
1.63, was displayed in Metrics and unlikely to
be accessed by end-user. Value still visible in the UI and
easily to recompute from a delta.
* Commented out runtime support for hardcoded ~0 or
0x01..0x0F rounding flags values for
AddRect()/AddRectFilled()/PathRect()/AddImageRounded().
* too many changes to list here, see https://github.com/ocornut/imgui/releases/tag/v1.89.1
ship any actual functionality. ImGui suppose to be used as sources
OBS-URL: https://build.opensuse.org/request/show/1128802
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=7
* BeginChild(): Upgraded 'bool border = false' parameter to
'ImGuiChildFlags flags = 0'.
* Added ImGuiChildFlags_Border value. As with our prior
"bool-to-flags" API updates, the ImGuiChildFlags_Border
value is guaranteed to be == true forever to ensure a
smoother transition, meaning all existing calls will still
work.
* BeginChildFrame()/EndChildFrame(): removed functions in
favor of using BeginChild() with the ImGuiChildFlags_FrameStyle
flag.
* IO: Removed io.MetricsActiveAllocations introduced in
1.63, was displayed in Metrics and unlikely to
be accessed by end-user. Value still visible in the UI and
easily to recompute from a delta.
* Commented out runtime support for hardcoded ~0 or
0x01..0x0F rounding flags values for
AddRect()/AddRectFilled()/PathRect()/AddImageRounded().
* too many changes to list here, see https://github.com/ocornut/imgui/releases/tag/v1.89.1
ship any actual functionality. ImGui suppose to be used as sources
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=14
- update to 1.89.6:
* Decorated log and release notes:
https://github.com/ocornut/imgui/releases/tag/v1.89.6
* Breaking changes:
* Clipper: Commented out obsolete redirection constructor which
was marked obsolete in 1.79:
'ImGuiListClipper(int items_count, float items_height)'
--> Use 'ImGuiListClipper() + clipper.Begin()'.
* Backends: SDL_Renderer: Renamed
'imgui_impl_sdlrenderer.h/cpp' to
'imgui_impl_sdlrenderer2.h/cpp',
in order to accomodate for upcoming SDL3 and change in its
SDL_Renderer API.
* Backends: GLUT: Removed call to ImGui::NewFrame() from
ImGui_ImplGLUT_NewFrame().
It needs to be called from the main app loop, like with
every other backends.
OBS-URL: https://build.opensuse.org/request/show/1095644
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=12
- update to 1.89.5:
* InputText: Reworked prev/next-word behavior to more closely
match Visual Studio text editor. Include '.' as a delimiter
and alter varying subtle behavior with how
blanks and separators are treated when skipping words.
* InputText: Fixed a tricky edge case, ensuring value is always
written back on the frame where IsItemDeactivated() returns
true, in order to allow usage without user retaining
underlying data. While we don't really want to
encourage user not retaining underlying data, in the absence
of a "late commit" behavior/flag we understand it may
be desirable to take advantage of this trick.
* Drag, Sliders: Fixed parsing of text input when '+' or '#'
format flags are used in the format string.
* Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register
ownership to held modifier so it doesn't interfere with other
code when remapping those actions.
* Nav: Made PageUp/PageDown/Home/End navigation also scroll
parent windows when necessary to make the target location
fully visible (same as e.g. arrow keys).
* ColorEdit: Fixed shading of S/V triangle in Hue Wheel mode.
* TabBar: Tab-bars with ImGuiTabBarFlags_FittingPolicyScroll
can be scrolled with horizontal mouse-wheel (or Shift + WheelY).
* Rendering: Using adaptive tessellation for RadioButton,
ColorEdit preview circles, Windows Close and Collapse Buttons.
* ButtonBehavior: Fixed an edge case where changing widget
type/behavior while active and using same id could lead to
an assert.
* Misc: Fixed ImVec2 operator[] violating aliasing rules
causing issue with Intel C++ compiler. (#6272) [@BayesBug]
OBS-URL: https://build.opensuse.org/request/show/1089473
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=10
- update to v1.89.2:
* Tables, Nav, Scrolling: fixed scrolling functions and focus tracking
with frozen rows and frozen columns. Windows now have a better
understanding of outer/inner decoration sizes, which should later lead
us toward more flexible uses of menu/status bars. (#5143, #3692)
* Tables, Nav: frozen columns are not part of menu layer and can be
crossed over. (#5143, #3692)
* Tables, Columns: fixed cases where empty columns may lead to empty
ImDrawCmd. (#4857, #5937)
* Tables: fixed matching width of synchronized tables (multiple tables
with same id) when only some instances have a vertical scrollbar and not
all. (#5920)
* Fixed cases where CTRL+Tab or Modal can occasionally lead to the
creation of ImDrawCmd with zero triangles, which would makes the render
loop of some backends assert (e.g. Metal with debugging, Allegro).
(#4857, #5937)
* Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at
runtime instead of compile-time, being consistent with our support for
io.ConfigMacOSXBehaviors and making it easier for bindings generators to
process that value. (#5923, #456)
* Inputs, Scrolling: better selection of scrolling window when hovering
nested windows and when backend/OS is emitting dual-axis wheeling inputs
(typically touch pads on macOS). We now select a primary axis based on
recent events, and select a target window based on it. We expect this
behavior to be further improved/tweaked. (#3795, #4559) [@ocornut,
@folays]
* InputText: fixed cursor navigation when pressing Up Arrow on the last
character of a multi-line buffer which doesn't end with a carriage
return. (#6000)
* Text: fixed layouting of wrapped-text block when the last source line is
OBS-URL: https://build.opensuse.org/request/show/1056351
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=8