Mihaly Sisak
708d669b7a
Merge af97ab5983085f94f1e880aded4113720b9fa5fd into 1f3ee75ee40c7f224714cd6896f152a902e81652
2026-11-05 11:45:34 +01:00
ocornut
d682dc41f5
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2026-10-30 19:56:15 +01:00
ocornut
b87728bd2b
Tables: clamp vertical border Y2 position when not using scrolling table, so that ImDrawCmd AABB stays reasonable.
...
This does not fix any screen visible issue, and should not be noticeable if correct.
(context: investigated this while looking at #4678 , but not actually directly related)
2026-10-29 21:21:47 +01:00
ocornut
83ccc610cc
Merge branch 'master' into docking
...
# Conflicts:
# imgui_demo.cpp
# imgui_draw.cpp
# imgui_internal.h
# imgui_widgets.cpp
2026-10-27 18:45:31 +01:00
Yaki Blake
2f1552d4d5
TreeNodeGetOpen(): added flags parameter. ( #9569 , #9592 , #3823 , #9251 )
2026-10-27 15:23:55 +01:00
ocornut
048d7e10b5
Style: made default arrow stroked. Added SymbolArrowSizeFactor, SymbolArrowThicknessFactor to style arrow. ( #5233 , #2431 , #2235 , #6730 , #8243 )
...
Internal function takes a angle: #5812 .
This doesn't cover generic rendering override for symbols: #8243 , #2431 (arrows, somehow less needed now), #3351 (checkmarks), #6730 (tree nodes)
2026-10-27 14:09:35 +01:00
ocornut
49a1450360
DrawList: added missing ImDrawFlags_RoundCornersMask_ -> ImDrawFlags_RoundMask_ legacy redirect.
...
Amend 0e756a6.
2026-10-15 18:53:04 +02:00
ocornut
d88f238d1d
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2026-10-15 18:47:51 +02:00
ocornut
1ff218165d
(Breaking) Commented out legacy names/functions which were obsoleted in 1.91.1 (Sept 2024).
2026-10-15 14:56:24 +02:00
ocornut
93a14c8fda
(Breaking) Commented out legacy names/functions which were obsoleted from 1.90.7 (May 2024) to 1.91.0 (Sept 2024).
2026-10-15 14:51:48 +02:00
ocornut
cbe3d5fb88
Version 1.93.1 WIP
2026-10-15 14:34:31 +02:00
ocornut
6d32174508
Allow IM_NODEBUGSTEP to be defined by user. ( #9584 )
...
Amend e2e9533991
2026-10-15 14:03:51 +02:00
ocornut
b94ba000e0
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_sdl3_metal4/main.mm
2026-10-14 18:30:46 +02:00
ocornut
c1aaac65e8
Version 1.93.0
2026-10-14 17:55:08 +02:00
ocornut
2859f6723c
Docs: fixed various comments.
2026-10-07 19:50:23 +02:00
ocornut
0cb6f6501c
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.mm
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2026-10-07 19:11:40 +02:00
ocornut
cbf4f05419
DrawList: added io.ConfigDebugDrawListDefaultsToStrokeLegacy. ( #9504 )
2026-10-07 18:53:55 +02:00
ocornut
cb66fcdaac
DrawList: rename ImDrawFlags_MiterOnly->ImDrawFlags_JoinMiter, ImDrawFlags_SquareCap->ImDrawFlags_CapSquare.
2026-10-07 18:53:55 +02:00
ocornut
475b793baa
Docs: reworked Changelog, comments.
2026-10-07 18:53:55 +02:00
ocornut
0e756a649d
(Breaking) DrawList: renamed ImDrawFlags_RoundCornersXXX to ImDrawFlags_RoundXXX. ( #9504 )
2026-10-07 18:53:55 +02:00
ocornut
c52f84c719
DrawList: rework _SelectFringeTexture() for use by third-party extensions + rename to _SelectLineTexture().
2026-10-07 18:53:55 +02:00
ocornut
dee0e34504
DrawList: amend PushDrawFlag() to report reaching capacity.
2026-10-07 18:53:55 +02:00
ocornut
451e107b3f
DrawList: removed ImDrawFlags_UseTexForStrokeLegacy as it doesn't have any use now that legacy code is out of the way.
2026-10-07 18:53:54 +02:00
Mikko Mononen
91dc4f456a
DrawList: fixed rendering issues on small and degenerate shapes.
...
The "does stroke cover the whole shape" used to be overly pessimistic to stroking artifacts. This was due to the fringe, where the geometry would mess up before visually closing the shape.
Fixed the issue by adding max inner offest for the AddPolyline(), which limits the inner offset and also adjusts the texture coords.
Second part of the fix was to calculate the pass the max inner offset from the common shapes (circle, ngon, ellipse, rect).
While this does not fix all the ellipse rendering issues, it limits the issue a lot.
e.g. AddRect() w/ size=5, thickness=2 used to trigger AddRectFilled() fallback because threshold was pessimistic to prevent the AddPolyline() issues.
2026-10-07 18:53:54 +02:00
ocornut
deb9c70ace
DrawList: ImDrawFlags_AALineEnds also requires ImDrawFlags_AALine, which makes it easier for widgets to opt-in AAEnds.
2026-10-07 18:53:54 +02:00
ocornut
20f17eeb6f
DrawList: fixed using ImDrawFlags_UseTexForRoundCorners when ImFontAtlasFlags_NoBakedRoundCorners has also been set.
2026-10-07 18:53:54 +02:00
ocornut
7a510274ce
DrawList: Comments. Atlas's NoBakedLines automatically disable AA at Style level. Fix passing non-Legacy stroke mask to PushDrawFlag(). Demo: Custom Rendering: use LiveEdit everywhere.
2026-10-07 18:53:54 +02:00
ocornut
eb02a7f24c
DrawList: support altering RoundCorners flags in scope as an undocumented trick/hack. ( #9489 )
...
Not documented because it could become troublesome if treated as a guaranteed styling feature.
2026-10-07 18:53:53 +02:00
ocornut
46e4c26095
DrawList: removed AddPolylineLegacy(), AddConvexPolyFilledLegacy().
2026-10-07 18:53:53 +02:00
ocornut
67bcd9d545
DrawList: moved no-AA handling into _SelectFringeTexture().
2026-10-07 18:53:53 +02:00
ocornut
2fdcf895c8
DrawList: moved _GetStrokePos() to a local inline function.
2026-10-07 18:53:53 +02:00
ocornut
f2cd901be6
DrawList: added PushDrawFlag(), PopDrawFlag(), ImSmallStack_<>. ( #9504 )
2026-10-07 18:53:53 +02:00
ocornut
7e87cb984d
DrawList: consistently support scope flags (ImDrawFlags::Flags) + primitive flags.
...
ImDrawFlags_AAEnds and ImDrawFlags_StrokeLegacy ok. (the most important ones).
ImDrawFlags_UseTexForRoundCorners ok.
ImDrawFlags_AAFill, ImDrawFlags_AAStrokes: for primitives: only for selected ones taking flags params. Haven't added the flag to all functions because it feels like a fringe use case.
ImDrawFlags_TextNoPixelSnap supported in RenderText(), per-prim (9417)
2026-10-07 18:53:53 +02:00
ocornut
008e0990b3
DrawList: comment about ImFontAtlasFlags_NoBakedLines. Demo: amend test bed to exercices more flags.
2026-10-07 18:53:53 +02:00
ocornut
7ccc8348bc
(Breaking) Obsoleted style.AntiAliasedLinesUseTex which now only makes sense for legacy strokes. Added style.AntiAliasedLineEnds.
...
# Conflicts:
# imgui.cpp
2026-10-07 18:53:53 +02:00
ocornut
02adb46a9f
(Breaking) DrawList: removed ImDrawListFlags_in favor of using ImDrawFlags.
...
# Conflicts:
# imgui.cpp
2026-10-07 18:53:53 +02:00
ocornut
cf85b48e55
DrawList: new ImDrawFlags API (yet unused in this commit)
2026-10-07 18:53:52 +02:00
ocornut
eb75c8056e
DrawList: inverted ImDrawFlags_NoAAEnds into ImDrawFlags_AAEnds.
2026-10-07 18:53:52 +02:00
ocornut
230249ad58
ImFontAtlas: moved TexUv buffers and configurable defines to internals.
2026-10-07 18:53:52 +02:00
Mikko Mononen
f272141a4d
DrawList: merged _AddPolyline back into AddPolyline.
...
- AddPolyline used to call different versions of _AddPolyline, the separation is not needed anymore, one less function call in debug mode
2026-10-07 18:53:52 +02:00
Mikko Mononen
ec510539c7
DrawList: increase detailed line textures from 3px to 4px to better hide the texture change.
...
+ amend: align #defines.
2026-10-07 18:53:52 +02:00
Mikko Mononen
130be3be42
DrawList: Optimization: added specialized 2 point polyline _AddLine().
2026-10-07 18:53:51 +02:00
Mikko Mononen
6856b3e06b
DrawList: added _InvFringeScale to use in cases of 1/_FringeScale.
2026-10-07 18:53:51 +02:00
ocornut
c59367efcb
DrawList: renamed ImDrawFlags_StrokeCenterAligned to ImDrawFlags_StrokeCenterBiased.
2026-10-07 18:53:51 +02:00
ocornut
d453a59b9c
DrawList: avoid using output references in _SelectFringeTexture() + misc tweaks, comments.
...
Matching coding style and more consistent for matching with other languages.
2026-10-07 18:53:51 +02:00
Mikko Mononen
ed8ed8bb71
DrawList: fixed thin lines appearing too bright.
...
- fixed how super sampled line textures are generated (and documented wrong assumption)
- switched to more samples and smaller thickness range
- tweaked super sampled texture selection to hide the texture changed better
2026-10-07 18:53:51 +02:00
Mikko Mononen
90e45bdde0
DrawList: extend the detailed stroke textures up stroke thickness 4.
2026-10-07 18:53:51 +02:00
Mikko Mononen
91e769fbba
DrawList: fixed visual pop in stroke rendering when thickness is between 1 and 2 pixels.
...
- added animated thickness to demo to make it easier to evaluate thickness visual progression
- added super sampled textures in thickness range [1..3] to avoid visual pop
2026-10-07 18:53:51 +02:00
Mikko Mononen
81f316a3bf
DrawList: fixed and optimized _AddRectTinyRounding.
...
- fixed bug where fringe size was not properly applied in _AddRectTinyRounding
- optimized _AddRectTinyRounding to use less vertices
- changed _AddRectTinyRounding to use similar texturing logic as lines
- remove unused fractional line width texture
2026-10-07 18:53:51 +02:00
ocornut
4d5fcdd4ba
DrawList: Textured Round Corners: use same array for fill and strokes.
...
Feels like a little less book-keeping.
2026-10-07 18:53:50 +02:00