Version 1.90.1

This commit is contained in:
ocornut 2024-01-09 23:16:34 +01:00
parent 6470e2279e
commit d6cb3c923d
8 changed files with 83 additions and 67 deletions

View File

@ -37,9 +37,11 @@ HOW TO UPDATE?
----------------------------------------------------------------------- -----------------------------------------------------------------------
VERSION 1.90.1 WIP (In Progress) VERSION 1.90.1 (Released 2024-01-10)
----------------------------------------------------------------------- -----------------------------------------------------------------------
Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.90.1
Breaking changes: Breaking changes:
- imgui_freetype: commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81. - imgui_freetype: commented out ImGuiFreeType::BuildFontAtlas() obsoleted in 1.81.
@ -52,48 +54,56 @@ Breaking changes:
Other changes: Other changes:
- Windows: BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport - Windows:
minus padding. There are no limit to a child width/height. (#7063) [@Devyre] - BeginChild(): Fixed auto-resizing erroneously limiting size to host viewport
- Windows: BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground minus padding. There are no limit to a child width/height. (#7063) [@Devyre]
is specified. (#1710, #7194) - BeginChild(): Resize borders rendered even when ImGuiWindowFlags_NoBackground
- Windows: Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y) is specified. (#1710, #7194)
for both axises since 1.90. (#7106) [@n0bodysec] - Fixed some auto-resizing path using style.WindowMinSize.x (instead of x/y)
- Scrolling: internal scrolling value is rounded instead of truncated, as a way to reduce for both axises since 1.90. (#7106) [@n0bodysec]
speed asymetry when (incorrectly) attempting to scroll by non-integer amount. (#6677) - Scrolling: internal scrolling value is rounded instead of truncated, as a way to reduce
- Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overrided back to true when speed asymmetry when (incorrectly) attempting to scroll by non-integer amount. (#6677)
navigation is enabled. SetNextFrameWantCaptureKeyboard() is always higher priority. (#6997) - Navigation (Keyboard/gamepad):
- Nav: Activation can also be performed with Keypad Enter. (#5606) - Nav, IO: SetNextFrameWantCaptureKeyboard(false) calls are not overridden back to true when
- Drag and Drop: Fixed drop target highlight on items temporarily pushing a widened clip rect navigation is enabled. SetNextFrameWantCaptureKeyboard() is always higher priority. (#6997)
(namely Selectables and Treenodes using SpanAllColumn flag) so the highlight properly covers - Nav: Activation can also be performed with Keypad Enter. (#5606)
all columns. (#7049, #4281, #3272) - Drag and Drop:
- InputTextMultiline: Fixed Tab character input not repeating (1.89.4 regression). - Fixed drop target highlight on items temporarily pushing a widened clip rect
- InputTextMultiline: Tabbing through a multi-line text editor which allows Tab character inputs (namely Selectables and Treenodes using SpanAllColumn flag) so the highlight properly covers
(using the ImGuiInputTextFlags_AllowTabInput flag) doesn't automatically activate it, in order all columns. (#7049, #4281, #3272)
to allow passing through multiple widgets easily. (#3092, #5759, #787) - InputText:
- DragScalarN, SliderScalarN, InputScalarN: Fixed incorrect pushes into ItemWidth - InputTextMultiline: Fixed Tab character input not repeating (1.89.4 regression).
stack when number of components is 1. [#7095] [@Nahor] - InputTextMultiline: Tabbing through a multi-line text editor which allows Tab character inputs
- Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text (using the ImGuiInputTextFlags_AllowTabInput flag) doesn't automatically activate it, in order
editing. Invalid inputs not applied to value, visibly reverted after validation. (#6810, #7096) to allow passing through multiple widgets easily. (#3092, #5759, #787)
- Drags, Sliders, Inputs: removal of filter means that "nan" and "inf" values may be input. (#7096) - Drags, Sliders, Inputs:
- DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components - DragScalarN, SliderScalarN, InputScalarN: Fixed incorrect pushes into ItemWidth
width computation to better distribute the error. (#7120, #7121) [@Nahor] stack when number of components is 1. [#7095] [@Nahor]
- ColorEdit: Layout tweaks for very small sizes. (#7120, #7121) - Drags, Sliders, Inputs: removed all attempts to filter non-numerical characters during text
- ColorPicker: Fixed saturation/value cursor radius not scaling properly. editing. Invalid inputs not applied to value, visibly reverted after validation. (#6810, #7096)
- Menus: Tweaked hover slack logic, adding a timer to avoid situations where a slow vertical - Drags, Sliders, Inputs: removal of filter means that "nan" and "inf" values may be input. (#7096)
movements toward another parent BeginMenu() can keep the wrong child menu open. (#6671, #6926) - DragScalarN, SliderScalarN, InputScalarN, PushMultiItemsWidths: improve multi-components
width computation to better distribute the error. (#7120, #7121) [@Nahor]
- 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. (#6671, #6926)
- 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:
- Request a debug break in a Begin() call.
- Request a debug break in a ItemAdd() call via debug log and hovering 0xXXXXXX identifiers.
- Request a debug break in a BeginTable() call.
- Request a debug break in a SetShortcutRouting()/Shortcut() call. [Internal]
- Metrics: Reorganize Tools menu.
- Added DebugFlashStyleColor() to identify a style color. Added to Style Editor.
- Debug Log: Hide its own clipper log to reduce noise in the output. (#5855)
- Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only,
making it easier when dealing with spammy logs. (#5855)
- Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize - Settings: Fixed an issue marking settings as dirty when merely clicking on a border or resize
grip without moving it. grip without moving it.
- Debug Tools: Added io.ConfigDebugIsDebuggerPresent option. When enabled, this adds buttons
in various locations of Metrics/Debugger to manually break in debugger in selected places:
- Request a debug break in a Begin() call.
- Request a debug break in a ItemAdd() call via debug log and hovering 0xXXXXXX identifiers.
- Request a debug break in a BeginTable() call.
- Request a debug break in a SetShortcutRouting()/Shortcut() call. [Internal]
- Debug Tools: Metrics: Reorganize Tools menu.
- Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor.
- Debug Tools: Debug Log: Hide its own clipper log to reduce noise in the output. (#5855)
- Debug Tools: Debug Log: Clicking any filter with SHIFT held enables it for 2 frames only,
making it easier when dealing with spammy logs. (#5855)
- Misc: Added IMGUI_USER_H_FILENAME to change the path included when using - Misc: Added IMGUI_USER_H_FILENAME to change the path included when using
IMGUI_INCLUDE_IMGUI_USER_H. (#7039) [@bryceberger] IMGUI_INCLUDE_IMGUI_USER_H. (#7039) [@bryceberger]
- Misc: Rework debug display of texture id in Metrics window to avoid compile-error when - Misc: Rework debug display of texture id in Metrics window to avoid compile-error when
@ -105,29 +115,34 @@ Other changes:
on a codebase where another copy of the library is used. on a codebase where another copy of the library is used.
- Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL - Misc: During shutdown, check that io.BackendPlatformUserData and io.BackendRendererUserData are NULL
in order to catch cases where backend was not shut down. (#7175) in order to catch cases where backend was not shut down. (#7175)
- Misc: Reworked Issue Template to with a shinier and better form. (#5927) [@Panquesito7, @PathogenDavid, @ocornut] - Misc: Reworked Issue Template to a shinier and better form. (#5927) [@Panquesito7, @PathogenDavid, @ocornut]
- Backends: GLFW, Emscripten: Added ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback() to - Backends:
register canvas selector and auto-resize GLFW window. (#6751) [@Traveller23, @ypujante] - GLFW, Emscripten: Added ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback() to
- Backends: GLFW: Fixed Windows specific hooks to use Unicode version of WndProc even when register canvas selector and auto-resize GLFW window. (#6751) [@Traveller23, @ypujante]
compiling in MBCS mode. (#7174) [@kimidaisuki22] - GLFW: Fixed Windows specific hooks to use Unicode version of WndProc even when
- Backends: OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load libGL.so variants in compiling in MBCS mode. (#7174) [@kimidaisuki22]
case of missing symlink. Fix 1.90 regression for some distros. (#6983) - OpenGL3: Update GL3W based imgui_impl_opengl3_loader.h to load libGL.so variants in
- Backends: Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs case of missing symlink. Fix 1.90 regression for some distros. (#6983)
vkDestroyCommandPool(). (#7075) [@FoonTheRaccoon] - Vulkan: Fixed mismatching allocator passed to vkCreateCommandPool() vs
- Backends: Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous vkDestroyCommandPool(). (#7075) [@FoonTheRaccoon]
"best practice" validation layer. (#7189, #4238) [@philae-ael] - Vulkan: Added MinAllocationSize field in ImGui_ImplVulkan_InitInfo to workaround zealous
- Backends: Vulkan: Stopped creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT "best practice" validation layer. (#7189, #4238) [@philae-ael]
as we don't reset them. - Vulkan: Stopped creating command pools with VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT
- Backends: WebGPU: Fixed wgpuRenderPassEncoderSetScissorRect() crash when rendering modal as we don't reset them.
window's dimming layer, which has an unclipped value in ImDrawCmd::ClipRect. (#7191) [@aparis69] - WebGPU: Fixed wgpuRenderPassEncoderSetScissorRect() crash when rendering modal window's
- Examples: GLFW+Emscripten: Fixed examples not consistently resizing according to host canvas. dimming layer, which has an unclipped value in ImDrawCmd::ClipRect. (#7191) [@aparis69]
(#6751) [@Traveller23, @ypujante] - Examples:
- Examples: GLFW+Emscripten: Fixed examples not consistently resizing according to host canvas.
(#6751) [@Traveller23, @ypujante]
- Examples: SDL3: Minor fixes following recent SDL3 in-progress development.
----------------------------------------------------------------------- -----------------------------------------------------------------------
VERSION 1.90.0 (Released 2023-11-15) VERSION 1.90.0 (Released 2023-11-15)
----------------------------------------------------------------------- -----------------------------------------------------------------------
Decorated log and release notes: https://github.com/ocornut/imgui/releases/tag/v1.90
Breaking changes: Breaking changes:
- BeginChild(): Upgraded 'bool border = false' parameter to 'ImGuiChildFlags flags = 0'. - BeginChild(): Upgraded 'bool border = false' parameter to 'ImGuiChildFlags flags = 0'.

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (main code and documentation) // (main code and documentation)
// Help: // Help:

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (headers) // (headers)
// Help: // Help:
@ -23,8 +23,8 @@
// Library Version // Library Version
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345') // (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
#define IMGUI_VERSION "1.90.1 WIP" #define IMGUI_VERSION "1.90.1"
#define IMGUI_VERSION_NUM 19004 #define IMGUI_VERSION_NUM 19010
#define IMGUI_HAS_TABLE #define IMGUI_HAS_TABLE
/* /*
@ -256,6 +256,7 @@ typedef void (*ImGuiMemFreeFunc)(void* ptr, void* user_data);
// ImVec2: 2D vector used to store positions, sizes etc. [Compile-time configurable type] // ImVec2: 2D vector used to store positions, sizes etc. [Compile-time configurable type]
// This is a frequently used type in the API. Consider using IM_VEC2_CLASS_EXTRA to create implicit cast from/to our preferred type. // This is a frequently used type in the API. Consider using IM_VEC2_CLASS_EXTRA to create implicit cast from/to our preferred type.
// Add '#define IMGUI_DEFINE_MATH_OPERATORS' in your imconfig.h file to benefit from courtesy maths operators for those types.
IM_MSVC_RUNTIME_CHECKS_OFF IM_MSVC_RUNTIME_CHECKS_OFF
struct ImVec2 struct ImVec2
{ {

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (demo code) // (demo code)
// Help: // Help:

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (drawing and font code) // (drawing and font code)
/* /*

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (internal structures/api) // (internal structures/api)
// You may use this file to debug, understand or extend Dear ImGui features but we don't provide any guarantee of forward compatibility. // You may use this file to debug, understand or extend Dear ImGui features but we don't provide any guarantee of forward compatibility.

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (tables and columns code) // (tables and columns code)
/* /*

View File

@ -1,4 +1,4 @@
// dear imgui, v1.90.1 WIP // dear imgui, v1.90.1
// (widgets code) // (widgets code)
/* /*