Releases: cfillion/reaimgui
Releases · cfillion/reaimgui
v0.9.3.2
v0.9.3.1
v0.9.3
- Fix sub-30ms double-clicks landing on the window under [p=2795708]
- Repair the LuaCATS definition file
- macOS: fix compatibility with macOS 15 "Sequoia" [p=2809649]
- macOS: fix a crash when uploading a texture bigger than Metal limits
- macOS: fix restoration of Ctrl when regaining focus and right-click emulation is enabled
- macOS: fix stuck right-click emulation when unfocusing while Ctrl is down
- macOS: forward mousewheel events when
WindowFlags_NoInputs
is set [p=2799779]
API changes:
- Add
CreateFontFromMem
v0.9.2
- Add experimental Zig bindings
- Fix the 0.7 shim of
CaptureKeyboardFromApp
[p=2790175] - Fix the Viewport API not starting a frame [p=2783450]
- Update to dear imgui 1.90.9
API changes:
- Add
ChildFlags_NavFlattened
- Add
Col_Tab{SelectedOverline,DimmedSelectedOverline}
andTabBarFlags_DrawSelectedOverline
- Add
ConfigFlags_NoKeyboard
- Add
CreateImageFromLICE
(support bitmaps created usingJS_LICE_CreateBitmap
only) - Add
InputTextFlags_{Display,Parse}EmptyRefVal
- Add optional 'flags' parameter to
CreateImageFromMem
- Add
Shortcut
,SetNextItemShortcut
andInputFlags_*
. - Add
SliderFlags_WrapAround
- Add
TableGetHoveredColumn
- Rename
Col_TabActive
to_TabSelected
,_TabUnfocused
to_TabDimmed
and_TabUnfocusedActive
to_TabDimmedSelected
- Rename
DragDropFlags_SourceAutoExpirePayload
to_PayloadAutoExpire
- Swap
Mod_Ctrl
↔Mod_Super
on macOS and removeMod_Shortcut
v0.9.1
- Add a LuaCATS definition file for IDE language servers (in the Releases page on GitHub)
- Clarify error messages occurring during font loading are font-related [p=2776476]
- Differentiate between integer/number in the documented Lua signatures
- Document
CollapsingHeader
's andSelectable
'sp_*
parameters as optional - Fix assertion failure when setting an empty drag/drop payload
- Fix incorrect values of
ModFlags_{Alt,Shift,Super}
in 0.8 shims - Prevent stuck keys when keyboard capture is released from an action's global shortcut key [p=2765259]
- Remove ReaImGui_Hello World.eel from the ReaPack package
- Update to dear imgui v1.90.6 (release notes)
C++ bindings:
- Annotate
Begin*
andCreate*
functions as[[nodiscard]]
- Fix all pointer parameters being effectively optional
gfx2imgui:
- Clamp excessively large requested font sizes [p=2781729]
API changes:
- Add
StyleVar_TableAngledHeadersTextAlign
- Add
TreeNodeFlags_SpanTextWidth
ProgressBar
accepts negative 'fraction' values for indeterminate mode
v0.9.0.2
- Fix 0.9 not switching the active font texture to the current DPI in dockers
- Fix 0.9 shims letting through unknown virtual key codes and asserting
- macOS: fix incorrect clipping in the Metal renderer if the clip rect's origin is smaller than the window's position
- Windows: repair drag-docking over floating dockers
v0.9.0.1
v0.9
- Add an action to open the HTML documentation
- Add a setting to disable hardware acceleration [p=2763726]
- Add saving and restoring UI state in REAPER screensets
- Document the minimum compatible version of each API function
- Fix list clippers not always using the specified context
- Fix v0.8.7's incorrect shim of
ListClipper_ForceDisplayRangeByIndices
- Implement error detection in the OpenGL renderer
- Improve accuracy when scaling up fonts for HiDPI
- Limit image width/height to 8192 pixels
- Reduce the maximum count of per-context attachments to 1024
- Report an error when using an EEL callback function outside of a callback
- Support toggling WindowFlags_NoInputs after window creation
- Throw an error when resources are wastefully re-created every frame
- Update Dear ImGui to v1.90.5
- Linux: fix input of multiple ponctuation keys (+ PrintScreen on every platform)
- Linux: fix more cases of window positions going out of sync with the WM [#16]
- Linux: workaround windows taking a long time to open on KDE + Wayland + Intel GPUs [p=2769385]
- Linux: macOS: fix detection of the mouse hovering another application
- macOS: disable the Metal renderer and default to OpenGL on macOS earlier than 10.11
- macOS: don't stretch contents when resizing OpenGL windows using system decorations
- macOS: fix off-by-one mouse cursor position at the bottom of the screen
- macOS: fix stuck left mouse button if it's pressed before Ctrl and right click emulation is enabled
- macOS: fix the OpenGL renderer failing on macOS 10.9 [p=2766024]
- macOS: re-initialize OpenGL after moving a window to another monitor
- Windows: fix missing preview when dragging files from the Media Explorer
- Windows: fix possible file drop false positive when the cursor is near another window
C++ bindings (reaper_imgui_functions.h):
- Add binary backward compatibility and minimum version check
- Add error reporting by locally throwing
ImGui_Error
- Add ImGui::load() to initialize the API instead of lazy-loading on call
- Now requires C++17 or newer
- Pass optional scalars directly by value
Lua bindings (imgui.lua, details here):
- Complete redesign of the backward-compatibility shim system
- Return a table containing the functions from the requested API version
- Allow multiple modules within the same action to use different API versions
- Numeric constants are exposed as values rather than functions
- Simplify the recommended example snippets using GetBuiltinPath + require
Python bindings:
- Remove ImGui_ prefix from function names and rename to imgui.py
Demo script:
- Examples > Custom rendering > Draw Channels
- Layout & Scrolling > Child windows > Auto-resize with constraints
- Layout & Scrolling > Child windows > Manual-resize
- Layout & Scrolling > Overlap Mode
- Tables > Angled headers
- Tables > Row height
- Tools > Item Picker
- Widgets > Drag and Drop > Tooltip at target location
- Widgets > Text Input > Miscellaneous
- Widgets > Tooltips
gfx2imgui.lua:
- Add REAPER v7.03's
getchar(65536)&8
andgetchar(65537)
, fix&4
- Support setfont with more than one font flag
- Trigger gfx.triangle's line heuristic with more than 2 unique points
- Various performance optimizations
API changes:
- Add
alpha_mul
optional parameter toGetColorEx
- Add
BeginItemTooltip
andSetItemTooltip
- Add
ChildFlags_{AlwaysAutoResize,AlwaysUseWindowPadding,{,Auto}Resize{X,Y},Border,FrameStyle,None}
- Add
ComboFlags_WidthFitPreview
- Add
ConfigVar_HoverStationaryDelay
and_HoverFlagsForTooltip{Mouse,Nav}
- Add
DebugFlashStyleColor
andDebugStartItemPicker
- Add
DrawList_AddConcavePolyFilled
andDrawList_PathFillConcave
- Add
DrawList_AddEllipse{,Filled}
andDrawList_PathEllipticalArcTo
- Add
GetBuiltinPath
(shortcut for "$resource_path/Scripts/ReaTeam Extensions/API") - Add
HoveredFlags_AllowWhenOverlappedBy{Item,Window}
and_ForTooltip
- Add
IsKeyChordPressed
- Add
Key_F{13..24}
andKey_App{Back,Forward}
- Add
ListClipper_IncludeItemByIndex
and rename_IncludeRangeByIndices
to_IncludeItemsByIndex
- Add
PopupFlags_NoReopen
- Add
StyleVar_{Tab,TabBar}BorderSize
andTabItemFlags_NoAssumedClosure
- Add
TableAngledHeadersRow
,TableColumnFlags_AngledHeader
andStyleVar_TableAngledHeadersAngle
- Add
TableFlags_HighlightHoveredColumn
- Add
TreeNodeFlags_SpanAllColumns
- Remove
BeginChildFrame
andEndChildFrame
(useBeginChild
+ChildFlags_FrameStyle
instead) - Remove
DestroyContext
(was not useful since 0.5) - Remove support of Windows virtual key codes (was deprecated in 0.6)
- Remove
TableGetColumnSortSpecs
's redundant sort_order return value - Remove
WindowFlags_AlwaysUseWindowPadding
- Rename
ShowStackToolWindow
toShowIDStackToolWindow
- Rename
{Selectable,TreeNode}Flags_AllowItemOverlap
to_AllowOverlap
- Replace
BeginChild
's (bool)border parameter with (int)child_flags - Replace
SetItemAllowOverlap
(after the item) withSetNextItemAllowOverlap
(before the item) - Set
TableNeedSort
'shas_specs
output value to false when not sorting in tristate mode - Swap the
column_{index,user_id}
return values ofTableGetColumnSortSpecs
v0.8.7.6
- Fix a crash when REAPER quits while a frame is still open
- Fix
TableGetColumnSortSpecs
accepting invalid negative indices - Handle font size truncation when computing rendering scale
- macOS: fix fallback for missing font families in recent OS versions
- macOS: fix window position desync when changing monitor resolution in recent OS versions [p=2732554]
- Linux: fix a brief display of uninitialized pixels when opening docked windows
- Linux: fix windows not staying in place under certain monitor scales [#13]
- Linux: repair HiDPI scaling (regression from v0.8) [p=2752987]
v0.8.7.5
- Fix compatibility of file drag and drop with dear imgui v1.89.4
- Focus new docked windows when they are the only tab in the docker [p=2724239]
- Windows: fix detection of the "multimonitor aware" HiDPI mode on Windows 8.1 [p=2724812]
- Windows: fix windows not staying in place after moving under certain monitor scales [p=2724640]
gfx2imgui:
- Fix replacing images after (re)initializing gfx
- Harden
gradrect
to gracefully handle bogus Infinity/NaN delta arguments