mirror of
https://github.com/Drezil/imgui.git
synced 2025-07-06 04:58:47 +02:00
Merge branch 'master' into docking
# Conflicts: # imgui.cpp # imgui.h # misc/debuggers/imgui.natvis
This commit is contained in:
@ -105,6 +105,32 @@ Other changes:
|
||||
|
||||
Breaking Changes:
|
||||
|
||||
- Removed redirecting functions/enums names that were marked obsolete in 1.66 (September 2018):
|
||||
- ImGui::SetScrollHere() --> use ImGui::SetScrollHereY()
|
||||
- ImDrawList: upgraded AddPolyline()/PathStroke()'s "bool closed" parameter to use "ImDrawFlags flags".
|
||||
The matching ImDrawFlags_Closed value is guaranteed to always stay == 1 in the future.
|
||||
- bool closed = false --> use ImDrawFlags_None, or 0
|
||||
- bool closed = true --> use ImDrawFlags_Closed
|
||||
Difference may not be noticeable for most but zealous type-checking tools may report a need to change.
|
||||
- ImDrawList: upgraded AddRect(), AddRectFilled(), PathRect() to use general ImDrawFlags instead of ImDrawCornersFlags.
|
||||
The old ImDrawCornersFlags used an awkward default value of ~0 or 0xF (4 lower bits set) to signify "round all
|
||||
corners". We still support old flags, but note that the new named flags are opt-out instead of opt-in. [@rokups]
|
||||
- AddRect(..., rounding, ImDrawCornerFlags_TopLeft) --> AddRect(..., ImDrawFlags_NoRoundCorners ^ ImDrawFlags_NoRoundCornerTL)
|
||||
- Flags now sanely default to 0 instead of defaulting to ~0 or ImDrawCornerFlags_All, consistent with everywhere else.
|
||||
- In practice, this shouldn't have an effect as those flags were rarely used.
|
||||
- All meaningful old uses are supported:
|
||||
- Default flags will behave the same.
|
||||
- Use of old named flags will behave the same (but will be obsoleted later)
|
||||
- Use of hardcoded ~0 or 0xF, previously suggested as a convenience, will behave the same (but will be obsoleted later).
|
||||
- Not supported:
|
||||
- Use of hardcoded values between 0x01 and 0x0E not using named flags are NOT supported (will assert).
|
||||
- Use of new ImDrawFlags together with ImDrawCornerFlags in the same call (will assert).
|
||||
- Use of rounding > 0.0f along old flags explicitely set as hardcoded 0 would have previously overidden the
|
||||
rounding value back into "no rounding", whereas it will now behave as "round all corners".
|
||||
This is technically the only real breaking change which we can't solve automatically.
|
||||
- ImDrawList: clarified that PathArcTo()/PathArcToFast() won't render with radius < 0.0f. Previously it sorts
|
||||
of accidentally worked but would lead to counter-clockwise paths which and have an effect on anti-aliasing.
|
||||
- Moved 'misc/natvis/imgui.natvis' to 'misc/debuggers/imgui.natvis' as we will provide scripts for other debuggers.
|
||||
- Style: renamed rarely used style.CircleSegmentMaxError (old default = 1.60f)
|
||||
to style.CircleTessellationMaxError (new default = 0.30f) as its meaning changed. (#3808) [@thedmd]
|
||||
- Win32+MinGW: Re-enabled IME functions by default even under MinGW. In July 2016, issue #738 had me incorrectly
|
||||
@ -114,25 +140,37 @@ Breaking Changes:
|
||||
|
||||
Other Changes:
|
||||
|
||||
- DragScalar: Fixed crash when using DragScalar() directly (not via common wrapper like DragFloat() etc.)
|
||||
with ImGuiSliderFlags_AlwaysClamp + only one of either p_min or p_max set. (#3824) [@harry75369]
|
||||
- Window: Shrink close button hit-testing region when it covers an abnormally high portion of the window visible
|
||||
area (e.g. when window is collapsed + moved in a corner) to facilitate moving the window away. (#3825)
|
||||
- Window, Nav: Fixed crash when calling SetWindowFocus(NULL) as the time a new window appears. (#3865) [@nem0]
|
||||
- Nav: Various fixes for losing gamepad/keyboard navigation reference point when a window reappears or
|
||||
when it appears while gamepad/keyboard are not being used. (#787)
|
||||
- Drags: Fixed crash when using DragScalar() directly (not via common wrapper like DragFloat() etc.)
|
||||
with ImGuiSliderFlags_AlwaysClamp + only one of either p_min or p_max set. (#3824) [@harry75369]
|
||||
- Drags, Sliders: Fixed a bug where editing value would use wrong number if there were digits right after
|
||||
format specifier (e.g. using "%f123" as a format string). [@rokups]
|
||||
- Drags, Sliders: Fixed a bug where using custom formatting flags (',$,_) supported by stb_sprintf.h
|
||||
would cause incorrect value to be displayed. (#3604) [@rokups]
|
||||
- Tables: Fixed unaligned accesses when using TableSetBgColor(ImGuiTableBgTarget_CellBg). (#3872)
|
||||
- IsItemHovered(): fixed return value false positive when used after EndChild(), EndGroup() or widgets using
|
||||
either of them, when the hovered location is located within a child window, e.g. InputTextMultiline().
|
||||
This is intended to have no side effects, but brace yourself for the possible comeback.. (#3851, #1370)
|
||||
- Drag and Drop: can use BeginDragDropSource() for other than the left mouse button as long as the item
|
||||
has an ID (for ID-less items will add new functionalities later). (#1637, #3885)
|
||||
- Added GetAllocatorFunctions() to facilitate sharing allocators accross DLL boundaries. (#3836)
|
||||
- ImFontAtlas: Added 'bool TexPixelsUseColors' output to help backend decide of underlying texture format. (#3369)
|
||||
This can currently only ever be set by the Freetype renderer.
|
||||
- imgui_freetype: Added ImGuiFreeTypeBuilderFlags_Bitmap flag to request Freetype loading bitmap data.
|
||||
- imgui_freetype: Added ImGuiFreeTypeBuilderFlags_Bitmap flag to request Freetype loading bitmap data.
|
||||
This may have an effect on size and must be called with correct size values. (#3879) [@metarutaiga]
|
||||
- ImDrawList: PathArcTo() now supports "int num_segments = 0" (new default) and adaptively tesselate.
|
||||
The adapative tesselation uses look up tables, tends to be faster than old PathArcTo() while maintaining
|
||||
quality for large arcs (tesselation quality derived from "style.CircleTessellationMaxError") (#3491) [@thedmd]
|
||||
- ImDrawList: PathArcToFast() also adaptively tesselate efficiently. This means that large rounded corners
|
||||
in e.g. hi-dpi settings will generally look better. (#3491) [@thedmd]
|
||||
- ImDrawList: AddCircle, AddCircleFilled(): Tweaked default segment count calculation to honor MaxError
|
||||
with more accuracy. Made default segment count always even for better looking result. (#3808) [@thedmd]
|
||||
- ImDrawList: AddCircle, AddCircleFilled(): New default for style.
|
||||
- Backends: Android: Added native Android backend. (#3446) [@duddel]
|
||||
- Backends: Win32: Added ImGui_ImplWin32_EnableAlphaCompositing() to facilitate experimenting with
|
||||
- Backends: Win32: Added ImGui_ImplWin32_EnableAlphaCompositing() to facilitate experimenting with
|
||||
alpha compositing and transparent windows. (#2766, #3447 etc.).
|
||||
- Backends: OpenGL, Vulkan, DX9, DX10, DX11, DX12, Metal, WebGPU, Allegro: Rework blending equation to
|
||||
preserve alpha in output buffer (using SrcBlendAlpha = ONE, DstBlendAlpha = ONE_MINUS_SRC_ALPHA consistently
|
||||
|
Reference in New Issue
Block a user