------------------------------------------------------------------- Mon Feb 19 18:51:18 UTC 2024 - Atri Bhattacharya - Update to version 1.90.3: * Breaking changes: - Backends: SDL2: Removed obsolete ImGui_ImplSDL2_NewFrame(SDL_Window*) signature which was obsoleted in 1.84. Calling ImGui_ImplSDL2_NewFrame() without parameter is fine. - Backends: Vulkan: Moved RenderPass parameter from ImGui_ImplVulkan_Init() function to ImGui_ImplVulkan_InitInfo structure. Not required when using dynamic rendering (gh#ocornut/imgui#7308). - Backends: Vulkan: Using dynamic rendering now require filling the PipelineRenderingCreateInfo structure in ImGui_ImplVulkan_InitInfo, allowing to configure color/depth/stencil formats. Removed ColorAttachmentFormat field previously provided for dynamic rendering. (gh#ocornut/imgui#7166, gh#ocornut/imgui#6855, gh#ocornut/imgui#5446, gh#ocornut/imgui#5037). * Menus, Popups: Fixed menus and popups with ChildWindow flag erroneously not displaying a scrollbar when contents is over parent viewport size (gh#ocornut/imgui#7287, gh#ocornut/imgui#7063). * Backends - SDL2, SDL3: Handle gamepad disconnection + fixed increasing gamepad reference counter continuously. - Added support for multiple simultaneous gamepads. Added ImGui_ImplSDL2_SetGamepadMode() function to select whether to automatically pick first available gamepad, all gamepads, or specific gamepads (gh#ocornut/imgui#3884, gh#ocornut/imgui#6559, gh#ocornut/imgui#6890, gh#ocornut/imgui#7180). - SDL3: Fixed gamepad handling (gh#ocornut/imgui#7180). - SDLRenderer3: query newly added SDL_RenderViewportSet() to not restore a wrong viewport if none was initially set. - DirectX9: Using RGBA format when allowed by the driver to avoid CPU side conversion (gh#ocornut/imgui#6575). * Internals: Fixed ImFileOpen not working before context is created, preventing creation of a font atlas before main context creation (gh#ocornut/imgui#7314, gh#ocornut/imgui#7315). ------------------------------------------------------------------- Wed Feb 14 09:06:50 UTC 2024 - Atri Bhattacharya - Update to version 1.90.2: * Better input routing features for docked/multi-viewport based applications. * ImGuiIO::ImeWindowHandle obsoleted in 1.87 in favor of writing to void* ImGuiViewport::PlatformHandleRaw. * Backends: WebGPU: ImGui_ImplWGPU_Init() now takes a ImGui_ImplWGPU_InitInfo structure instead of variety of parameters, allowing for easier further changes (gh#ocornut/imgui#7240). * Navigation: - keyboard/gamepad activation mark widgets as held to give better visual feedback. - tweak to logic marking navigated item as hovered when using keyboard, allowing the hover highlight to stay even while another item is activated. - Fixed SetKeyboardFocusHere() not working when current nav focus is in different scope, regression from 1.90.1 related to code scoping Tab presses to local scope. (gh#ocornut/imgui#7226). - Fixed pressing Escape while in a child window with ImGuiWindowFlags_NavFlattened flag (gh#ocornut/imgui#7237). - Improve handling of Alt key to toggle menu so that key ownership may be claimed on individual left/right alt key without interfering with the other. - Menus: Fixed click on a BeginMenu() followed by right-arrow from making the child menu reopen and flicker (using ImGuiPopupFlags_NoReopen). - ImGuiWindowFlags_NoNavInputs is tested during scoring so NavFlattened windows can use it. * Popups: - OpenPopup(): added ImGuiPopupFlags_NoReopen flag to specifically not close and reopen a popup when it is already open (gh#ocornut/imgui#1497, gh#ocornut/imgui#1533). - Slight change to popup closing logic (e.g. after focusing another window) which skipped over popups that are also child windows. * Combo: Fixed not reusing windows optimally when used inside a popup stack. * Debug Tools: - Metrics: Fixed debug break in SetShortcutRouting() not handling ImGuiMod_Shortcut redirect. - Metrics: Improved Monitors and Viewports minimap display. Highlight on hover. - Debug Log: Added "Input Routing" logging. - Added "nop" to IM_DEBUG_BREAK macro on GCC to work around GDB bug (gh#ocornut/imgui#7266). * Backends: - Vulkan: Fixed vkAcquireNextImageKHR() validation errors in VulkanSDK 1.3.275 by allocating one extra semaphore than in-flight frames (gh#ocornut/imgui#7236). - Vulkan: Fixed vkMapMemory() calls unnecessarily using full buffer size (gh#ocornut/imgui#3957). - Vulkan: Fixed handling of ImGui_ImplVulkan_InitInfo::MinAllocationSize field. (gh#ocornut/imgui#7189, gh#ocornut/imgui#4238). - WebGPU: Added ImGui_ImplWGPU_InitInfo::PipelineMultisampleState. (gh#ocornut/imgui#7240). - WebGPU: Filling all WGPUDepthStencilState fields explicitly as a recent Dawn update stopped setting default values. (gh#ocornut/imgui#7232). - WebGPU: Fixed pipeline layout leak (gh#ocornut/imgui#7245). - OpenGL3: Backup and restore GL_PIXEL_UNPACK_BUFFER. (gh#ocornut/imgui#7253). * Internals: - Many improvements related to yet unpublicized shortcut routing and input ownership systems. - InputText: Added internal helpers to force reload of user-buffer when active (gh#ocornut/imgui#2890). ------------------------------------------------------------------- Mon Jan 22 10:20:29 UTC 2024 - Dirk Müller - update to 1.90.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: + DragScalarN, SliderScalarN, InputScalarN: Fixed incorrect pushes into ItemWidth stack when number of components is 1. + Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text editing. Invalid inputs not applied to value, visibly reverted after validation. + Drags, Sliders, Inputs: removal of filter means that "nan" and "inf" values may be input. (#7096) + DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components width computation to better distribute the error. * Menus: + Tweaked hover slack logic, adding an extra timeout to avoid situations where a slow vertical movements toward another parent BeginMenu() can keep the wrong child menu open. * Color Editors: + ColorEdit: Layout tweaks for very small sizes. (#7120, #7121) + ColorPicker: Fixed saturation/value cursor radius not scaling properly. * Debug Tools: - Added io.ConfigDebugIsDebuggerPresent option. When enabled, this adds buttons in various locations of Metrics/Debugger to manually request a debugger break: - Metrics: Reorganize Tools menu. - Added DebugFlashStyleColor() to identify a style color. * Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize grip without moving it. * Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. (#7039) [@bryceberger] * Misc: Rework debug display of texture id in Metrics window to avoid compile-error when ImTextureID is defined to be larger than 64-bits. (#7090) * Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined. * Misc: Fixed text functions fast-path for handling "%s" and "%.*s" to handle null pointers gracefully, like most printf implementations. (#7016, #3466, #6846 * Misc: Renamed some defines in imstb_textedit.h to avoid conflicts when using unity/jumbo builds on a codebase where another copy of the library is used. * Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL in order to catch cases where backend was not shut down. (#7175) * Misc: Reworked Issue Template to a shinier and better form. ------------------------------------------------------------------- Sat Nov 25 20:24:55 UTC 2023 - Dirk Müller - 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(). ------------------------------------------------------------------- Tue Jun 27 14:57:13 UTC 2023 - Dirk Müller - 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. ------------------------------------------------------------------- Mon May 29 01:41:01 UTC 2023 - Dirk Müller - 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] * IO: Input queue trickling adjustment for touch screens. * Fixed tapping on BeginTabItem() on a touch-screen. * Fixed tapping on CollapsingHeader() with a close button on a touch-screen. * Fixed tapping on TreeNode() using ImGuiTreeNodeFlags_AllowItemOverlap on a touch-screen. * Fixed tapping on Selectable() using ImGuiSelectableFlags_AllowItemOverlap on a touch-screen. * Fixed tapping on TableHeader() on a touch-screen. * IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. * IO: Fixed support for calling io.AddXXXX functions from inactive context (wrongly advertised as supported in 1.89.4). * Backends: OpenGL3: Fixed GL loader crash when GL_VERSION returns NULL. * Backends: OpenGL3: Properly restoring "no shader program bound" if it was the case prior to running the rendering function. * Backends: Win32: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen/Pen. * Backends: SDL2/SDL3: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen. * This is relying on SDL passing SDL_TOUCH_MOUSEID in the event's 'which' field. * Backends: SDL2/SDL3: Avoid calling SDL_StartTextInput()/SDL_StopTextInput() as they actually block text input input and don't only pertain to IME. * Backends: GLFW: Added support on Win32 only for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen/Pen. * Backends: GLFW: Fixed key modifiers handling on secondary viewports. * Backends: Android: Added support for io.AddMouseSourceEvent() to discriminate Mouse/TouchScreen/Pen. * Backends: OSX: Added support for io.AddMouseSourceEvent() to discriminate Mouse/Pen. * Backends: WebGPU: Align buffers. Use WGSL shaders instead of SPIR-V. Add gamma uniform. * Backends: WebGPU: Reorganized to store data in io.BackendRendererUserData like other backends. ------------------------------------------------------------------- Thu Apr 13 19:42:09 UTC 2023 - Dirk Müller - update to 1.89.4: * Nav: Tab key goes through every items (when keyboard navigation is active). * Nav: Enter key works to activate most items (when keyboard navigation is active). * Added return value to BeginTooltip(). * Examples: Activated keyboard and gamepad navigation by default in all examples. * Various other fixes related to: Nav, Tables, Drag and Drop, InputText. * Various improvements to Win32, SDL2, SDL3, GLFW backends. * Added a Debug Tools to facilitate testing user-code testing Begin/BeginChild return value. * All changes see https://github.com/ocornut/imgui/releases/tag/v1.89.4 ------------------------------------------------------------------- Thu Apr 13 19:41:03 UTC 2023 - Dirk Müller - update to 1.89.3: * Backends+Examples: SDL2: renamed all unnumbered references to "sdl" to "sdl2". * This is in prevision for the future release of SDL3 and its associated backend. * All changes see https://github.com/ocornut/imgui/releases/tag/v1.89.3 ------------------------------------------------------------------- Fri Jan 6 08:51:21 UTC 2023 - Dirk Müller - 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 above the clipping region. Regression added in 1.89. (#5720, #5919) * Misc: added GetItemID() in public API. It is not often expected that you would use this, but it is useful for Shortcut() and upcoming owner-aware input functions which wants to be implemented with public API. * Fonts: imgui_freetype: fixed a packing issue which in some occurrences would prevent large amount of glyphs from being packed correctly. (#5788, #5829) * Fonts: added a void* UserData field in ImFontAtlas, as a convenience for use by applications using multiple font atlases. * Demo: simplified "Inputs" section, moved contents to Metrics->Inputs. * Debug Tools: Metrics: added "Inputs" section, moved from Demo for consistency. * Misc: fixed parameters to IMGUI_DEBUG_LOG() not being dead-stripped when building with IMGUI_DISABLE_DEBUG_TOOLS is used. (#5901) [@Teselka] * Misc: fixed compile-time detection of SSE features on MSVC 32-bits builds. (#5943) [@TheMostDiligent] * Examples: DirectX10, DirectX11: try WARP software driver if hardware driver is not available. (#5924, #5562) * Backends: GLFW: Fixed mods state on Linux when using Alt-GR text input (e.g. German keyboard layout), which could lead to broken text input. Revert a 2022/01/17 change were we resumed using mods provided by GLFW, turns out they are faulty in this specific situation. (#6034) * Backends: Allegro5: restoring using al_draw_indexed_prim() when Allegro version is >= 5.2.5. (#5937) [@Espyo] * Backends: Vulkan: Fixed sampler passed to ImGui_ImplVulkan_AddTexture() not being honored as we were using an immutable sampler. (#5502, #6001, #914) [@martin-ejdestig, @rytisss] ------------------------------------------------------------------- Tue Dec 6 20:58:07 UTC 2022 - Dirk Müller - update to 1.89.1: * too many changes to list here, see https://github.com/ocornut/imgui/releases/tag/v1.89.1 ------------------------------------------------------------------- Mon Aug 23 13:52:58 UTC 2021 - Martin Hauke - 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. ------------------------------------------------------------------- Sat Aug 21 21:26:07 UTC 2021 - Martin Hauke - Update to 1.84.1 https://github.com/ocornut/imgui/releases/tag/v1.84 ------------------------------------------------------------------- Tue Apr 20 11:18:02 UTC 2021 - Anton Smorodskyi - drop logic building imgui.so because this library is dummy and not ship any actual functionality. ImGui suppose to be used as sources ------------------------------------------------------------------- Sat Feb 20 15:07:04 UTC 2021 - Matthias Mailänder - update to 1.81 ------------------------------------------------------------------- Sat Dec 5 15:36:53 UTC 2020 - Matthias Mailänder - update to 1.79 ------------------------------------------------------------------- Thu Mar 16 14:00:52 UTC 2017 - dmacvicar@suse.de - initial package for 1.49