This project is mirrored from https://github.com/cfillion/reaimgui.git.
Pull mirroring updated .
-
v0.9.1
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 and Selectable's p_* 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 <https://github.com/ocornut/imgui/releases/tag/v1.90.6> C++ bindings: • Annotate Begin* and Create* 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
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.0.1 • Hotfix: repair docking on Windows
-
v0.9
v0.9 • Add an action to open the HTML documentation • Add a setting to disable hardware acceleration (Direct3D on Windows and OpenGL on macOS only) [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): • 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 and getchar(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 to GetColorEx • Add BeginItemTooltip and SetItemTooltip • Add ChildFlags_{AlwaysAutoResize,AlwaysUseWindowPadding,{,Auto}Resize{X,Y},Border,FrameStyle,None} • Add ComboFlags_WidthFitPreview • Add ConfigVar_HoverStationaryDelay and _HoverFlagsForTooltip{Mouse,Nav} • Add DebugFlashStyleColor and DebugStartItemPicker • Add DrawList_AddConcavePolyFilled and DrawList_PathFillConcave • Add DrawList_{AddEllipse{,Filled}} and DrawList_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} and Key_App{Back,Forward} • Add ListClipper_IncludeItemByIndex and rename _IncludeRangeByIndices to _IncludeItemsByIndex • Add PopupFlags_NoReopen • Add StyleVar_{Tab,TabBar}BorderSize and TabItemFlags_NoAssumedClosure • Add TableAngledHeadersRow, TableColumnFlags_AngledHeader and StyleVar_TableAngledHeadersAngle • Add TableFlags_HighlightHoveredColumn • Add TreeNodeFlags_SpanAllColumns • Remove BeginChildFrame and EndChildFrame (use BeginChild+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 to ShowIDStackToolWindow • Rename {Selectable,TreeNode}Flags_AllowItemOverlap to _AllowOverlap • Replace BeginChild's (bool)border parameter with (int)child_flags • Replace SetItemAllowOverlap (after the item) with SetNextItemAllowOverlap (before the item) • Set TableNeedSort's has_specs to false when not sorting in tristate mode • Swap the column_{index,user_id} return values of TableGetColumnSortSpecs
-
v0.8.7.6
v0.8.7.6 • Fix a brief display of uninitialized pixels when opening docked windows • 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 windows not staying in place under certain monitor scales [#13] • Linux: repair HiDPI scaling (regression from v0.8) [p=2752987]
-
v0.8.7.5
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
-
v0.8.7.4
v0.8.7.4 • Fix a crash when undocking via the context menu since 0.8.7.3
-
v0.8.7.3
v0.8.7.3 • Report stored size when opening a docked window [p=2700189] • macOS and Windows: fix a memory leak and potential crash when the renderer fails to initialize • macOS: fix a crash when pressing mouse buttons higher than 5 • macOS: fix a memory leak and a potential crash in the Metal renderer when images are incorrectly re-created every frame while a window is occluded [p=2698614] • macOS: fix mouse events not reaching REAPER after opening a native menu while a mouse button is down then pressing another button • macOS: release mouse capture on window focus changes [p=2695756] • macOS: send a single right-click event when handling the "Control+left-click emulates right-click" setting
-
v0.8.7.2
v0.8.7.2 • Fix a crash when windows are closed out of ownership order while a mouse button is down • macOS: fix the x86_64 release binary not containing FreeType2 since 0.8.7 [p=2694907]
-
v0.8.7.1
v0.8.7.1 • Fix imgui.lua always applying all available shims
-
v0.8.7
v0.8.7 • Add a context menu with "move to docker"/undock/close actions to docker tabs • Allow docked windows to be resized down to 10x10px [p=2691001] • Fix docked windows not opening with focus [p=2690820] • Fix usage of the Attach function in Python ReaScripts [#11] • Update to dear imgui v1.89.6 <https://github.com/ocornut/imgui/releases/tag/v1.89.6> • Linux: fix window position desync when the WM denies or alter the move request [p=2670425] • Linux: implement mouse events passthrough via WindowFlags_NoInputs [p=2684289] • macOS: restore compatibility with macOS 10.9–10.12 (accidentally lost in v0.8) • Windows: add a title bar context menu when native decorations are enabled • Windows: disable DirectX feature toggling fullscreen when pressing Alt+Enter • Windows: don't bring REAPER back to front when focusing another app while a topmost window is shown [p=2684110] API changes: • Rename ListClipper_ForceDisplayRangeByIndices to ListClipper_IncludeRangeByIndices
-
v0.8.6.1
v0.8.6.1 • macOS: restore accidentally disabled clipboard I/O
-
v0.8.6
v0.8.6 • Add a button to restore default settings in the preferences page • Don't give focus to the first setting when opening the preferences page [t=277729] • Enable docking by default (ConfigFlags_DockingEnable) and expose a user setting • Fix 1-frame flicker after uploading a new texture • Fix a use-after-free when calling an EEL function after an assertion failure • Fix crashes when removing/uploading textures every frame [p=2663379] • Fix name conflict between the ImGui_Image type and function in the C++ header • Revert "disable ConfigVar_InputTrickleEventQueue by default" [p=2664743] • Update to dear imgui v1.89.5 <https://github.com/ocornut/imgui/releases/tag/v1.89.5> API changes: • Move the C++ API functions to a ImGui namespace
-
v0.8.5
v0.8.5 • Add a new API for running EEL programs • Collect all errors in a single report window • Disable ConfigVar_InputTrickleEventQueue by default • Fix duplicate error reports when failing to end a frame • Remove global object count limit (limit context attachments instead) • Update to dear imgui v1.89.4 <https://github.com/ocornut/imgui/releases/tag/v1.89.4> • macOS: fix stuck keys when undocking while a key is down • macOS: follow the "Control+left-click emulates right-click" setting [t=277197] • Windows: fix a regression in the OpenGL renderer causing crashes [p=2656531] Documentation: • Add a table of contents of the entire category tree • Insert links for references with trailing wildcards (eg. StyleVar_*) gfx2imgui: • Add REAPER v6.75's gfx.getchar second return value • Implement (partial) blit rotation • More compatibility improvements and performance optimizations API changes: • Add 'callback' parameter to InputText* and SetNextWindowSizeConstraints • Add a boolean return value to BeginTooltip • Add ConfigVar_DebugBeginReturnValue{Once,Loop} • Add CreateFunctionFromEEL and Function_* • Add InputTextFlags_Callback{Always,CharFilter,Completion,Edit,History} • Renamed {Push,Pop}AllowKeyboardFocus to {Push,Pop}TabStop
-
v0.8.4
v0.8.4 • Fill the HWND text of docked windows with the tab name [p=2649553] • Fix "Too many vertices in ImDrawList" assertion when adding many draw calls during the first 2 frames of a context • Fix a crash when opening a window more than 1 minute after the last one in the same context [p=2639537] • Fix two cases of stuck mouse buttons and keyboard keys after closing windows • Ignore warnings when loading PNG images • Lua demo: replace `r.ImGui_` prefix with `ImGui.` • macOS: fix a crash when destroying a window immediately after receiving focus • macOS: fix stuck buttons and keys after a native menu is opened • macOS: update window position when resizing via native decorations • Re-raise the minimum OpenGL version to 3.2 • Update dear imgui to v1.89.3 <https://github.com/ocornut/imgui/releases/tag/v1.89.3> • Windows: fix a memory leak in the Direct3D 10 renderer [p=2639587] • Windows: fix incorrect monitor work area calculation in some cases [p=2639793] gfx2imgui: • Fix multiple text aligment and clipping bugs [p=2646948] • Fix preloading fonts after gaps in slot indices • Fix stuck mouse buttons after focus loss [p=2647387] • Improve rendering of lines with fractional scaling [p=2646948] • Various compatibility improvements and performance optimizations API changes: • Add MouseCursor_None • Add NumericLimits_{Double,Int} • Add SeparatorText and StyleVar_SeparatorText{BorderSize,Align,Padding}
-
v0.8.3
v0.8.3 • Add actions to toggle boolean settings • Adjust the top docker's hit box for the tabbar, transport and toolbar above • Fix a crash when undocking by dragging the top-left corner triangle • Reduce memory usage when docking is enabled • Update dear imgui to v1.89.2 <https://github.com/ocornut/imgui/releases/tag/v1.89.2> imgui.lua: • Extend 0.8 shims for window boundary extension to cover End{Popup,Table,Tooltip} • Fix 0.7 shim of CaptureKeyboardFromApp [p=2633349] • Fix 0.8 shims eating the return values of TableNext{Column,Row} and TableSetColumnIndex [p=2632656] • Fix 0.8 shims making EndGroup move the cursor to the wrong Y position [p=2632446] API changes: • Remove IsWindowCollapsed (broken since v0.5)
-
v0.8.2
v0.8.2 • Add user settings for docking with Shift only, docking splitting and docking window transparency • Automatically open tabs for dropping windows when hovering REAPER dockers or main window sides • Disable mouse input when captured by a window belonging to a different context • Fix a crash when moving dockers with a single window on the left or top side of a split • Fix parameters with two characters names missing from the documentation • Make the settings page's help text behave more similarly to native pages • Re-enable drawing the background of empty dockers • Reuse the existing native window when dropping a window back into the same docker • Use the system theme text color in the error dialog • macOS: fix crash/corruption in the Metal renderer due to GPU buffers being incorrectly resized • Linux: compile libjpeg-turbo into the binary for compatibility with Fedora [p=2627734] • Linux: fix windows not gaining focus on first click since v0.8 • Linux: replace window z-order heuristic with proper hit-testing • Windows: filter out \b\e\r\n\t from the character input queue • Windows: fix assertion failure in some HiDPI monitor configurations [p=2616056][p=2620880][p=2622681] • Windows: follow the "Use large (non-tool) window frames for windows" setting • Windows: temporarily disable usage under non-multimonitor aware HiDPI modes [p=2629558] • Windows: treat non-client window area as passthrough when hit-testing imgui.lua: • Exceptionally add shims to restore pre-0.8 values for GetKeyMods • Extend 0.8's shims for window boundary extension to cover table cells
-
v0.8.1
v0.8.1 • imgui.lua: add shims for dear imgui 1.89's obsoleted window boundary extension via SetCursorPos • macOS: fix the Metal renderer crashing (observed on macOS 12 ARM)
-
v0.8
v0.8 • Add a user settings page in Preferences > Plug-ins > ReaImGui: - Option to disable restoration of saved settings ("safe mode") - Option to select which graphics renderer to use • Display indirect errors in a custom, more user-friendly dialog • Implement bitmap image loading (PNG and JPEG from a file or memory) and image sets (per-DPI variants) • macOS: add a Metal renderer (new default, requires El Capitan or newer) • Share GPU textures with all windows in the same context (except on Linux due to a GDK 3 limitation) • Update dear imgui to v1.89.1 <https://github.com/ocornut/imgui/releases/tag/v1.89> and <https://github.com/ocornut/imgui/releases/tag/v1.89.1> • Windows: add a Direct3D 10 renderer (new default) • Windows: disable minimizing and use the tool window style when decorations are enabled • Windows: support mouse input everywhere in windows straddling multiple monitors with mixed DPI scales Documentation: • DRI-ify default argument values (code + doc using a single source of truth) • Hide the "ImGui_" prefix • More accurate line number ranges in links to source code • Reorganize all functions in hierarchical, individually documented sections • Rich-text formatting (Markdown <3) • Syntax highlighting of code samples (if client-side Javascript is enabled) API changes: • Add {Attach,Detach} for linking the liftime of any object with a context • Add ConfigFlags_NavNoCaptureKeyboard • Add ConfigVar_HoverDelay{Normal,Short} and ConfigVar_InputTextEnterKeepActive • Add GetFramerate • Add HoveredFlags_{Delay{Normal,Short},NoSharedDelay} • Add Image{,Button} and DrawList_AddImage{,Quad,Rounded} • Add InputTextFlags_EscapeClearsAll • Add Key_Mouse* • Add Mod_Shortcut (alias for _Ctrl on Linux & Windows and _Super, the Cmd key, on macOS) • Remove {Attach,Detach}Font (replaced by generic {Attach,Detach} functions) • Rename ModFlags_* to Mod_*
-
v0.7.2
v0.7.2 • Fix window under the window under mouse getting hovered for 1 frame on mouse release • macOS: fix crash when the context is destroyed while a window is docked • macOS: fix framebuffer size not updating when switching from another docker tab • macOS: fix non-initial windows not gaining focus on open • Windows: fix multiple DPI scaling issues API changes: • Add GetWindowDpiScale gfx2imgui: • Add GFX2IMGUI_NO_BLIT_PREMULTIPLY option [p=2609372] • Fix nearest font selection when sizes smaller than requested are loaded [p=2609372] • Keep alive fonts while they're actively being drawn from a blitted buffer [p=2609372] • Warn when substituting font for the default one