imgui v1.76 Release Notes

Release Date: 2020-05-06 // almost 4 years ago
  • Reading the full changelog is a good way to keep up to date with the things Dear ImGui has to offer, and maybe will give you ideas of some features that you've been ignoring until now!

    All Changes

    (No known API breaking changes)

    • Drag and Drop, Nav: Disabling navigation arrow keys when drag and drop is active. In the docking branch pressing arrow keys while dragging a window from a tab could trigger an assert. (#3025)
    • BeginMenu: Using same ID multiple times appends content to a menu. (#1207) [@rokups]
    • ๐Ÿ›  BeginMenu: Fixed a bug where setNextWindowXXX data before a beginMenu() would not be cleared when the menu is not open. (#3030)
    • ๐Ÿ›  InputText: Fixed password fields displaying ASCII spaces as blanks instead of using the '*' glyph. (#2149, #515)
    • ๐Ÿ’… Selectable: Fixed honoring style.selectableTextAlign with unspecified size. (#2347, #2601)
    • Selectable: Allow using SelectableFlag.SpanAllColumns in other columns than first. (#125)
    • TreeNode: Made clicking on arrow with _OpenOnArrow toggle the open state on the Mouse Down event rather than the Mouse Down+Up sequence (this is rather standard behavior).
    • ๐Ÿšš ColorButton: Added ColorEditFlag.NoBorder flag to remove the border normally enforced by default for standalone ColorButton.
    • ๐Ÿ›  Nav: Fixed interactions with ListClipper, so e.g. Home/End result would not clip the landing item on the landing frame. (#787)
    • ๐Ÿ›  Nav: Internals: Fixed currently focused item from ever being clipped by ItemAdd(). (#787)
    • ๐Ÿ›  Scrolling: Fixed scrolling centering API leading to non-integer scrolling values and initial cursor position. This would often get fixed after the fix item submission, but using the ListClipper as the first thing after begin() could largely break size calculations. (#3073)
    • โž• Added optional support for Unicode plane 1-16 (#2538, #2541, #2815) [@cloudwu, @samhocevar]
      • More onsistent handling of unsupported code points (0xFFFD).
      • Surrogate pairs are supported when submitting UTF-16 data via io.addInputCharacterUTF16(), allowing for more complete CJK input.
      • Various structures such as Font, GlyphRangesBuilder will use more memory, this is currently not particularly efficient.
    • Columns: undid the change in 1.75 were columns()/beginColumns() were preemptively limited to 64 columns with an assert. (#3037, #125)
    • ๐Ÿ›  Window: Fixed a bug with child window inheriting ItemFlags from their parent when the child window also manipulate the ItemFlags stack. (#3024) [@Stanbroek]
    • ๐Ÿ›  Font: Fixed non-ASCII space occasionally creating unnecessary empty looking polygons.
    • Misc: Added additional checks in endFrame() to verify that io.keyXXX values have not been tampered with between newFrame() and endFrame().
    • 0๏ธโƒฃ Misc: Made default clipboard handlers for Win32 and OSX use a buffer inside the main context instead of a static buffer, so it can be freed properly on Shutdown. (#3110)
    • ๐Ÿ Metrics: Made Tools section more prominent. Showing wire-frame mesh directly hovering the DrawCmd instead of requiring to open it. Added options to disable bounding box and mesh display. Added notes on inactive/gc-ed windows.
    • Demo: Added black and white and color gradients to Demo>Examples>Custom Rendering.
    • โœ… Backends: OpenGL3: Fixed version check mistakenly testing for GL 4.0+ instead of 3.2+ to enable BackendFlag.RendererHasVtxOffset, leaving 3.2 contexts without it. (#3119, #2866) [@wolfpld]