28 Commits
devel ... devel

Author SHA256 Message Date
Dirk Müller
0a13f16bc6 Update to v1.91.8 2025-02-10 17:40:32 +01:00
69f85d5d39 Accepting request 1226519 from devel:libraries:c_c++
- update to 1.91.0:

OBS-URL: https://build.opensuse.org/request/show/1226519
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=13
2024-11-26 19:56:28 +00:00
8e86874043 Accepting request 1191047 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1191047
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=12
2024-08-02 15:27:03 +00:00
e5dae905d9 Accepting request 1189723 from home:frantisek.simorda:branches:openSUSE:Factory
- - 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
2024-08-01 19:10:40 +00:00
dcb4181f66 Accepting request 1161169 from devel:libraries:c_c++
- 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
2024-03-25 20:11:00 +00:00
15e82e0f14 - 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/package/show/devel:libraries:c_c++/imgui?expand=0&rev=22
2024-03-24 19:06:05 +00:00
50fbc38b71 Accepting request 1147786 from devel:libraries:c_c++
Update to version 1.90.3. (forwarded request 1147657 from badshah400)

OBS-URL: https://build.opensuse.org/request/show/1147786
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=10
2024-02-20 20:15:04 +00:00
8b35a45310 Accepting request 1147657 from home:badshah400:branches:devel:libraries:c_c++
Update to version 1.90.3.

OBS-URL: https://build.opensuse.org/request/show/1147657
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=20
2024-02-20 10:38:15 +00:00
a77fcdd7f3 Accepting request 1146644 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1146644
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=9
2024-02-14 22:20:17 +00:00
0d26137c38 Accepting request 1146531 from home:badshah400:branches:devel:libraries:c_c++
Update to version 1.90.2.

OBS-URL: https://build.opensuse.org/request/show/1146531
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=18
2024-02-14 19:42:54 +00:00
4a163a388f Accepting request 1140582 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1140582
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=8
2024-01-22 19:38:30 +00:00
8fd468fb9d Accepting request 1140581 from home:dirkmueller:Factory
- 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
2024-01-22 11:45:47 +00:00
ad8aa2bdc0 Accepting request 1128802 from devel:libraries:c_c++
- 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
2023-11-26 18:37:41 +00:00
c9e081ca26 - 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/package/show/devel:libraries:c_c++/imgui?expand=0&rev=14
2023-11-25 20:27:23 +00:00
d6d79b9774 Accepting request 1095646 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1095646
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=6
2023-06-27 21:18:07 +00:00
09bdce88e9 Accepting request 1095644 from home:dirkmueller:Factory
- 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
2023-06-27 15:08:13 +00:00
199b8f87bf Accepting request 1090196 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1090196
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=5
2023-06-01 15:19:52 +00:00
76636553fb Accepting request 1089473 from home:dirkmueller:Factory
- 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
2023-06-01 07:58:55 +00:00
2117aecb2d Accepting request 1060062 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1060062
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=4
2023-01-21 18:11:32 +00:00
45fb45aa3f Accepting request 1056351 from home:dirkmueller:Factory
- 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
2023-01-20 22:55:40 +00:00
f1dbdc8d0e Accepting request 1042881 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1042881
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=3
2022-12-14 13:11:45 +00:00
afbc305ab7 Accepting request 1040801 from home:dirkmueller:Factory
- update to 1.89.1:
  * too many changes to list here, see https://github.com/ocornut/imgui/releases/tag/v1.89.1

OBS-URL: https://build.opensuse.org/request/show/1040801
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=6
2022-12-14 10:09:51 +00:00
1f66472ac4 Accepting request 914685 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/914685
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=2
2021-08-28 20:29:04 +00:00
Matthias Mailänder
55ed52ca05 Accepting request 913786 from games
- Update to 1.84.2
  Bugfix release:
  * Disabled: Fixed nested BeginDisabled()/EndDisabled() calls.
  * Backends: OpenGL3: OpenGL: Fixed ES 3.0 shader ("#version 300
    es") to use normal precision floats. Avoid wobbly rendering at
    HD resolutions.
- Update to 1.84.1
  https://github.com/ocornut/imgui/releases/tag/v1.84

OBS-URL: https://build.opensuse.org/request/show/913786
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=5
2021-08-27 19:49:09 +00:00
d247f8b36c Accepting request 888331 from devel:libraries:c_c++
Initial commit of 1.81 version to the Factory. 
Dependency of several other projects

OBS-URL: https://build.opensuse.org/request/show/888331
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/imgui?expand=0&rev=1
2021-05-04 20:00:50 +00:00
Matthias Mailänder
3a601b1625 Accepting request 886979 from home:asmorodskyi:branches:devel:libraries:c_c++
drop logic building imgui.so because this library is dummy and not
ship any actual functionality. ImGui suppose to be used as sources

OBS-URL: https://build.opensuse.org/request/show/886979
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=3
2021-04-23 17:22:19 +00:00
617b02d4a7 Accepting request 874025 from home:Mailaender:branches:editors
new upstream release

OBS-URL: https://build.opensuse.org/request/show/874025
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=2
2021-02-23 10:28:41 +00:00
dd5a61223b Accepting request 853280 from home:Mailaender:branches:devel:libraries:c_c++
fixed the build; candidate for unbundling in upstream projects

OBS-URL: https://build.opensuse.org/request/show/853280
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/imgui?expand=0&rev=1
2020-12-05 17:09:45 +00:00
8 changed files with 214 additions and 71 deletions

View File

@@ -1,4 +0,0 @@
mtime: 1732622426
commit: c377a76d74e235cafb8a13eabf291de270ba6543949a203100c2dcfa8ecde78a
url: https://src.opensuse.org/clibs/imgui
revision: master

BIN
build.specials.obscpio (Stored with Git LFS)

Binary file not shown.

View File

@@ -1,3 +1,159 @@
-------------------------------------------------------------------
Mon Feb 10 14:40:19 UTC 2025 - Dirk Müller <dmueller@suse.com>
- update to 1.91.8:
* ColorEdit, ColorPicker: redesigned how alpha is displayed in
the preview square. (#8335, #1578, #346)
* Removed ImGuiColorEditFlags_AlphaPreview (made value 0):
it is now the default behavior.
* Prior to 1.91.8: alpha was made opaque in the preview by
default _unless_ using ImGuiColorEditFlags_AlphaPreview.
* We now display the preview as transparent by default.
You can use ImGuiColorEditFlags_AlphaOpaque to use old
behavior.
* The new flags may be combined better and allow finer
controls:
* ImGuiColorEditFlags_AlphaOpaque: disable alpha in the
preview, but alpha value still editable.
* ImGuiColorEditFlags_AlphaNoBg: disable rendering a
checkerboard background behind transparent color.
* ImGuiColorEditFlags_AlphaPreviewHalf: display half
opaque / half transparent preview.
* Backends: SDLGPU3: Renamed
ImGui_ImplSDLGPU3_InitInfo::GpuDevice to Device
for consistency. (#8163, #7998, #7988)
* imgui_freetype: fixed issue where glyph advances would
incorrectly be snapped to pixels. Effectively it would only
be noticeable when hinting is disabled with
ImGuiFreeTypeBuilderFlags_NoHinting, as hinting itself
snaps glyph advances.
* Inputs: added IsMouseReleasedWithDelay() helper. (#8337,
#8320)
* Windows, Style: Fixed small rendering issues with menu bar,
resize grip and scrollbar when using thick border sizes.
* Windows: Fixed IsItemXXXX() functions not working on append-
version of EndChild(). (#8350)
* Error Handling: Recovery from missing EndMenuBar() call.
* Tables, Menus: Fixed using BeginTable() in menu layer (any
menu bar). (#8355)
* Tables, Menus: Fixed tables or child windows submitted inside
BeginMainMenuBar()
* ColorEdit, ColorPicker: Fixed alpha preview broken in 1.91.7.
* Tabs, Style: reworked selected overline rendering to better
accommodate for rounded tabs. Reduced default thickness
(style.TabBarOverlineSize), increased default rounding
(style.TabRounding).
* Debug Tools: Tweaked font preview.
* ImDrawList: texture baked storage for thick line reduced from
~64x64 to ~32x32. (#3245)
* Fonts: IndexLookup[] table hold 16-bit values even in
ImWchar32 mode, as it accounts for number of glyphs in
same font. This is favorable to CalcTextSize() calls touching
less memory.
* Fonts: OversampleH/OversampleV defaults to 0 for automatic
selection.
* - OversampleH == 0 --> use 1 or 2 depending on font size
and use of PixelSnapH.
* - OversampleV == 0 --> always use 1.
* ImFontAtlas: made calling ClearFonts() call ClearInputData(),
as calling one without the other is never correct. (#8174, #6556,
#6336, #4723)
* Examples: DirectX12: Reduced number of frame in flight from 3
to 2 in provided example, to reduce latency.
* Examples: Vulkan: better handle VK_SUBOPTIMAL_KHR being
returned by vkAcquireNextImageKHR() or vkQueuePresentKHR().
#7831) [@NostraMagister]
* Backends: SDL2: removed assert preventing using
ImGui_ImplSDL2_SetGamepadMode()
with ImGui_ImplSDL2_GamepadMode_Manual and an empty array.
* Backends: SDL3: removed assert preventing using
ImGui_ImplSDL3_SetGamepadMode()
with ImGui_ImplSDL3_GamepadMode_Manual and an empty array.
* Backends: SDLGPU3: Exposed ImGui_ImplSDLGPU3_CreateDeviceObje
cts()/_DestroyDeviceObjects().
Removed return value from
ImGui_ImplSDLGPU3_CreateFontsTexture(). (#8163, #7998, #7988)
* Backends: SDL_Renderer2/3: Use endian-dependent RGBA32
texture format, to match SDL_Color. (#8327) [@dkosmari]
* Backends: DirectX12: Texture upload use the command queue
provided in ImGui_ImplDX12_InitInfo instead of creating its own.
* Backends: OSX: Removed notification observer when shutting
down. (#8331) [@jrachele]
* TreeNode: renamed ImGuiTreeNodeFlags_SpanTextWidth to
ImGuiTreeNodeFlags_SpanLabelWidth
for consistency with other names. Kept redirection enum
(will obsolete). (#6937)
* Fixed issues with IsItemDeactivated() and
IsItemDeactivatedAfterEdit() not emitting a reliable signal
when an item is deactivated externally: e.g.
via an explicit clear of focus, clear of active id, opening
of modal etc.
* It used to work when the interruption happened in the
frame before the active item as submitted, but not after.
It should work in both cases now.
* InputText: Fixed a bug where character replacements performed
from a callback were not applied when pasting from clipboard.
* InputText: Fixed issue when activating a ReadOnly field when
the underlying value is being modified. (#8242)
* InputText: Added sanity check to detect some cases of passing
a non zero-terminated input buffer.
* InputText: Fixed not calling CallbackEdit on revert/clear
with Escape key, although IsItemEdited() was behaving correctly.
* Tables: Fixed TableAngledHeadersRow() creating an infinite
horizontal scrolling region when the table is hosted in a
viewport with negative coordinates (left of primary monitor,
with multi-viewports enabled).
* Tables, MultiSelect: Fixed an issue where column width may be
mismeasured when calling BeginMultiSelect() while inside a
table.
* TreeNode, Tables: Added
ImGuiTreeNodeFlags_LabelSpanAllColumns to make
the label (not only the highlight/frame) also spans all
columns. This is useful for table rows where you know nothing
else is submitted. (#8318, #3565)
* Drags: Added ImGuiSliderFlags_NoSpeedTweaks flag to disable
keyboard modifiers altering the tweak speed. Useful if you
want to alter tweak speed yourself based on your own logic.
(#8223)
* Nav: Fixed an issue where Alt key would clear current active
item on windows with the ImGuiWindowFlags_NoNavInputs flag.
(#8231)
* Debug Tools: Debug Log: hovering 0xXXXXXXXX values in log is
allowed even if a popup is blocking mouse access to the debug
log window. (#5855)
* Debug Tools: Item Picker: Always available in Tools menu
regardless of value of io.ConfigDebugIsDebuggerPresent. (#2673)
* Fonts: Fixed miscalculation of Ellipsis ("...") character
width when automatically created from a single comma character,
affecting some fonts/settings (not all).
* Demo: Added label edition to Property Editor demo + fix an ID
issue. (#8266) [@moritz-h]
* Misc: Fixed misc/cpp/imgui_stdlib.h/.cpp not supporting
IMGUI_DISABLE. (#8294) [@juur]
* Misc: Fixed MinGW builds not using UTF-8 friendly _wfopen().
* Backends: SDLGPU3 for SDL3: Added backend for SDL_GPU!
* Backends: SDL3: Added ImGui_ImplSDL3_InitForSDLGPU() for
consistency, even though it is currently not doing anything
particular.
* Backends: Allegro5: Avoid calling al_set_mouse_cursor()
repeatedly since it appears to leak on on X11 (#8256).
* Backends: Metal: Fixed leaks when using metal-cpp. (#8276,
#8166) [@selimsandal]
* Backends: Vulkan: Added
IMGUI_IMPL_VULKAN_MINIMUM_IMAGE_SAMPLER_POOL_SIZE to clarify
how many image sampler descriptors are expected to be
available in the provided descriptor pool. Current backend
needs 1 but it is expected that by end of Q1 2025
this number will grow (will stay a small number).
* Backends: DX11: Expose vertex constant buffer in
ImGui_ImplDX11_RenderState.
* Reset projection matrix in ImDrawCallback_ResetRenderState
handlers. (#6969, #5834, #7468, #3590)
* Backends: DX10: Expose ImGui_ImplDX10_RenderState for
completeness. (#6969, #5834, #7468, #3590)
* Examples: Added Win32+Vulkan example for completeness.
(#8180) [@jristic]
-------------------------------------------------------------------
Tue Nov 26 05:31:00 UTC 2024 - ming li <mli@suse.com>
@@ -5,26 +161,26 @@ Tue Nov 26 05:31:00 UTC 2024 - ming li <mli@suse.com>
Breaking Changes:
* IO, IME: renamed platform IME hook and added explicit context for
consistency and future-proofness.
old: io.SetPlatformImeDataFn(ImGuiViewport* viewport,
old: io.SetPlatformImeDataFn(ImGuiViewport* viewport,
ImGuiPlatformImeData* data);
new: io.PlatformSetImeDataFn(ImGuiContext* ctx, ImGuiViewport*
viewport, ImGuiPlatformImeData* data);
It is expected that for a vast majority of users this is
automatically set by core library and/or platform backend so
It is expected that for a vast majority of users this is
automatically set by core library and/or platform backend so
it won't have any effect.
* Obsoleted GetContentRegionMax(), GetWindowContentRegionMin() and
GetWindowContentRegionMax(). (information thread: #7838)
You should never need those functions! You can do everything in
You should never need those functions! You can do everything in
less a confusing manner by only using GetCursorScreenPos() and
GetContentRegionAvail(). Also always consider that if you are
using GetWindowPos() and GetCursorPos() you may also be making
things unnecessarily complicated.
I repeat: You can do everything with GetCursorScreenPos()
and GetContentRegionAvail()!
GetWindowContentRegionMax().x - GetCursorPos().x -->
GetWindowContentRegionMax().x - GetCursorPos().x -->
GetContentRegionAvail().x
GetWindowContentRegionMax().x + GetWindowPos().x -->
GetCursorScreenPos().x + GetContentRegionAvail().x
GetWindowContentRegionMax().x + GetWindowPos().x -->
GetCursorScreenPos().x + GetContentRegionAvail().x
// when called from left edge of window
GetContentRegionMax() --> GetContentRegionAvail() + GetCursorScreenPos()
- GetWindowPos() // right edge in local coordinates
@@ -34,29 +190,29 @@ Tue Nov 26 05:31:00 UTC 2024 - ming li <mli@suse.com>
Obsoleted PushButtonRepeat()/PopButtonRepeat() in favor of using
new PushItemFlag()/PopItemFlag() with ImGuiItemFlags_ButtonRepeat.
Kept inline redirecting functions (will obsolete).
Obsoleted PushTabStop()/PopTabStop() in favor of using new
Obsoleted PushTabStop()/PopTabStop() in favor of using new
PushItemFlag()/PopItemFlag() with ImGuiItemFlags_NoTabStop.
Kept inline redirecting functions (will obsolete).
Renamed ImGuiSelectableFlags_DontClosePopups to
Renamed ImGuiSelectableFlags_DontClosePopups to
ImGuiSelectableFlags_NoAutoClosePopups for consistency. Kept inline
redirecting functions (will obsolete). + Internals:
redirecting functions (will obsolete). + Internals:
changed/inverted ImGuiItemFlags_SelectableDontClosePopup (default==false) to
ImGuiItemFlags_AutoClosePopups (default==true), same logic,
ImGuiItemFlags_AutoClosePopups (default==true), same logic,
only inverted behavior. (#1379, #1468, #2200, #4936, #5216, #7302, #7573)
* Commented out obsolete ImGuiModFlags (renamed to ImGuiKeyChord in 1.89).
(#4921, #456)
* Commented out obsolete ImGuiModFlags_XXX values
* Commented out obsolete ImGuiModFlags_XXX values
(renamed to ImGuiMod_XXX in 1.89). (#4921, #456)
ImGuiModFlags_Ctrl -> ImGuiMod_Ctrl, ImGuiModFlags_Shift ->
ImGuiModFlags_Ctrl -> ImGuiMod_Ctrl, ImGuiModFlags_Shift ->
ImGuiMod_Shift etc.
* Backends: GLFW+Emscripten: Renamed
* Backends: GLFW+Emscripten: Renamed
ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback()
to ImGui_ImplGlfw_InstallEmscriptenCallbacks(), with an
additional GLFWWindow* parameter. (#7647) [@ypujante]
Other Changes
* Added TextLink(), TextLinkOpenURL() hyperlink widgets. (#7660)
* IO: added io.PlatformOpenInShellFn() handler to open a
* IO: added io.PlatformOpenInShellFn() handler to open a
link/folder/file in OS shell. (#7660)
Added IMGUI_DISABLE_DEFAULT_SHELL_FUNCTIONS to disable
default Windows/Linux/Mac implementation.
@@ -68,33 +224,33 @@ Tue Nov 26 05:31:00 UTC 2024 - ming li <mli@suse.com>
Added ImGuiItemFlags_NoTabStop to disable tabbing through items.
Added ImGuiItemFlags_NoNav to disable any navigation and focus
of items. (#787)
Added ImGuiItemFlags_NoNavDefaultFocus to disable item being
Added ImGuiItemFlags_NoNavDefaultFocus to disable item being
default focus. (#787)
Added ImGuiItemFlags_ButtonRepeat to enable repeat on any
Added ImGuiItemFlags_ButtonRepeat to enable repeat on any
button-like behavior.
Added ImGuiItemFlags_AutoClosePopups to disable menu
Added ImGuiItemFlags_AutoClosePopups to disable menu
items/selection auto closing parent popups.
Disabling this was previously possible for Selectable() via a direct
flag but not for MenuItem(). (#1379, #1468, #2200, #4936, #5216, #7302, #7573)
This was mostly all previously in imgui_internal.h.
* Multi-Select: added multi-select API and demos. (#1861, #6518)
This system implements standard multi-selection idioms (CTRL+mouse
This system implements standard multi-selection idioms (CTRL+mouse
click, CTRL+keyboard moves, SHIFT+mouse click, SHIFT+keyboard moves,
etc.) with support for clipper (not submitting non-visible items),
etc.) with support for clipper (not submitting non-visible items),
box-selection with scrolling, and many other details.
In the spirit of Dear ImGui design, your code owns both items and actual
selection data. This is designed to allow all kinds of selection storage
you may use in your application (e.g. set/map/hash, intrusive selection,
interval trees, up to you).
The supported widgets are Selectable(), Checkbox(). TreeNode() is also
The supported widgets are Selectable(), Checkbox(). TreeNode() is also
technically supported but... using this correctly is more complicated.
You need some sort of linear/random access to your tree, which is suited
to advanced trees setups already implementing filters and clipper.
to advanced trees setups already implementing filters and clipper.
We will work toward simplifying our existing demo for trees.
A helper ImGuiSelectionBasicStorage is provided to facilitate getting
A helper ImGuiSelectionBasicStorage is provided to facilitate getting
started in a typical app (likely to suit a majority of users).
Documentation:
Wiki page https://github.com/ocornut/imgui/wiki/Multi-Select for
Wiki page https://github.com/ocornut/imgui/wiki/Multi-Select for
API overview.
Demo code + headers are well commented.
Added BeginMultiSelect(), EndMultiSelect(), SetNextItemSelectionUserData().
@@ -106,10 +262,10 @@ Tue Nov 26 05:31:00 UTC 2024 - ming li <mli@suse.com>
(clear, select all, set range, etc.)
Other fields are helpful when using a clipper, or wanting to handle
deletion nicely.
Added ImGuiSelectionBasicStorage helper to store and maintain a
Added ImGuiSelectionBasicStorage helper to store and maintain a
selection (optional):
This is similar to if you used e.g. a std::set to store a selection,
with all the right glue to honor ImGuiMultiSelectIO requests.
with all the right glue to honor ImGuiMultiSelectIO requests.
Most applications can use that.
Added ImGuiSelectionExternalStorage helper to maintain an externally
stored selection (optional):
@@ -124,7 +280,7 @@ Fri Jul 26 06:22:12 UTC 2024 - Frantisek Simorda <frantisek.simorda@suse.com>
- - 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)
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).
@@ -136,7 +292,7 @@ Fri Jul 26 06:22:12 UTC 2024 - Frantisek Simorda <frantisek.simorda@suse.com>
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: 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.
@@ -151,25 +307,25 @@ Fri Jul 26 06:22:12 UTC 2024 - Frantisek Simorda <frantisek.simorda@suse.com>
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: 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: 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)
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)
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)
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)
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)
@@ -227,54 +383,54 @@ Fri Jul 26 06:22:12 UTC 2024 - Frantisek Simorda <frantisek.simorda@suse.com>
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: (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)
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)
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)
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)
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)
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: 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)
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(): 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: 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)
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

View File

@@ -17,7 +17,7 @@
Name: imgui
Version: 1.91.0
Version: 1.91.8
Release: 0
Summary: Immediate Mode Graphical User interface for C++ with minimal dependencies
License: MIT

BIN
v1.90.4.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
v1.90.9.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
v1.91.0.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
v1.91.8.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.