ocornut
2af6dd9694
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
2026-06-04 13:53:55 +02:00
ocornut
6acba3b47d
ImDrawListSharedData: rename CircleSegmentMaxError to CircleTessellationMaxError. Remove misleading ArcFastRadiusCutoff assignment.
...
cc 051ce0765 , f107693d9 (3808)
2026-06-04 13:51:57 +02:00
ocornut
14278db024
Fonts: better document the fact that ImFontAtlas::Clear()/ClearFonts() functions are unlikely to be useful nowadays + fix tex->Updates[] ever-growing if ClearFonts() is called between frames.
2026-06-03 15:27:02 +02:00
ocornut
3b99fc4883
ColorButton: small rendering tweak/optimization for the alpha checkerboard.
...
Inverting the pattern means that for our typical 3x3 grid we don't need to draw 1+4 rounded rectangles, only 1.
This also fix the slightly rounding mismatch when switching from a=255 to a<255 paths.
2026-06-01 14:23:29 +02:00
ocornut
cac16b0d16
DrawList: rename ImDrawListFlags_NoTextPixelSnap -> ImDrawListFlags_TextNoPixelSnap. ( #3437 , #9417 , #2291 )
...
Amend 1d33ea9
2026-05-29 18:39:17 +02:00
ocornut
1d33ea939f
DrawList: added ImDrawListFlags_NoTextPixelSnap to disable snapping of AddText() coordinates for a given scope. ( #3437 , #9417 , #2291 )
...
This may evolve into a per-call ImDrawFlags option as well.
+ clip_rect.Max.y early out may be applied before truncation.
2026-05-29 18:12:11 +02:00
ocornut
12b7977555
Tweak CalcTextSize() awkward width rounding/ceiling code to reduce floating-point imprecisions altering the result by 1 even at relatively small width. ( #791 ) + apply same fudge factor to less important roundings.
...
ceilf() is still measurable e.g. ballpark +0.5 for 200k calls.
2026-05-28 19:19:11 +02:00
ocornut
4cb21e4a1e
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_win32.cpp
2026-05-28 15:46:34 +02:00
ocornut
33bb693b4c
DrawList: skip PathLineTo/PathStroke calls for common AddLine(), AddLineH(), AddLineV() functions. ( #4091 )
2026-05-28 15:37:29 +02:00
ocornut
783eba926f
Docs: retroactively amend 1.92.8 changelog about ImDrawFlags_Closed value.
...
Amend 6df50a0
2026-05-28 11:37:37 +02:00
qwer
ac07da2b5b
Fonts: Added macros to disable ProggyClean/ProggyVector separately. ( #9407 )
2026-05-27 16:50:53 +02:00
ocornut
fbcf95193f
ImFontAtlas: moved common TexData calls into a same helper functions, so adding new ones is easier.
2026-05-22 20:03:30 +02:00
ocornut
068e055510
Textures: extract ImTextureDataUpdateNewFrame() out of ImFontAtlasUpdateNewFrame(). ( #8465 )
2026-05-15 16:38:45 +02:00
ocornut
5a76f2adf1
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2026-05-15 15:14:52 +02:00
ocornut
c7767926ce
Version 1.92.9 WIP
2026-05-15 13:28:32 +02:00
ocornut
e0f5f9a14c
Amend AddRect(), AddPolyline() error detection to safely return an trigger error handling mechanism.
...
Amend 6df50a0667
2026-05-12 17:40:28 +02:00
ocornut
b61e56346a
Merge branch 'master' into docking
...
# Conflicts:
# imgui_demo.cpp
2026-05-12 16:43:34 +02:00
ocornut
8936b58fe2
Version 1.92.8
...
Include minor bits: adjust activeid logging, tweak comments.
2026-05-12 16:30:30 +02:00
ocornut
73afb6b6e6
Fonts: clarify that ClearFonts() be useful over calling Clear().
2026-05-11 17:45:59 +02:00
ocornut
b8f6c51af7
Fonts: move ClearFonts(), ClearInputData(), ClearTexData() implementation (no other changes)
2026-05-11 17:42:08 +02:00
ocornut
eb453f2be6
Checkbox, Style: added ImGuiCol_CheckboxSelectedBg. ( #9392 )
2026-05-11 14:30:34 +02:00
ocornut
c51f1a6e47
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
2026-05-07 16:59:11 +02:00
ocornut
6df50a0667
(Breaking) DrawList: swapped the last two arguments of AddRect(), AddPolyline(), PathStroke(). thickness<>flags.
...
Added inline redirection functions when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is off.
Marked the old functions are =delete when IMGUI_DISABLE_OBSOLETE_FUNCTIONS is on, to allow for better type-checking.
The aim is to be able to use/add flags to more ImDrawList functions, and making existing functions consistents was deemed very desirable.
2026-05-07 16:37:57 +02:00
ocornut
976c5c0f3a
Textures: extract ImTextureDataQueueUpload() out of ImFontAtlasTextureBlockQueueUpload() ( #8465 )
...
Not atlas specific, in support of texture system.
2026-05-06 16:19:39 +02:00
ocornut
310f3c8370
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.h
# backends/imgui_impl_metal.mm
# imgui.cpp
2026-05-06 12:30:38 +02:00
Mikko Mononen
691b89baae
ImDrawList: added AddLineH(), AddLineV() helpers. ( #9360 )
...
This commit is aimed to be a lossless transform. Further layout fixes in subsequent commits.
2026-04-28 17:04:54 +02:00
ocornut
a31071573b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_dx9.cpp
# backends/imgui_impl_metal.h
# backends/imgui_impl_metal.mm
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdlgpu3.cpp
# backends/imgui_impl_sdlrenderer2.cpp
# backends/imgui_impl_sdlrenderer2.h
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2026-04-23 22:11:04 +02:00
ocornut
82f46a73f8
(Breaking) Moved ImDrawCallback_ResetRenderState -> ImGui::GetPlatformIO().DrawCallback_ResetRenderState + added room in ImGuiPlatformIO for more standard backend-agnostic draw callbacks. ( #9378 )
2026-04-23 21:50:41 +02:00
ocornut
329c5a6b3b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.mm
# backends/imgui_impl_sdl2.cpp
2026-04-16 15:29:57 +02:00
ocornut
3cd8683061
Fonts: assert when using MergeMode with an explicit size over a target font with an implicit size, as scale factor are likely erroneous. ( #9361 )
2026-04-13 16:45:18 +02:00
ocornut
f83a378d62
TabBar: changed edge's TabItem ClipRect to not pass an inverted PushClipRect().
...
While not currently a problem, it would be if ImRect::Overlaps() is changed to use <= instead of < (cc: #3976 which deal with Contains but sort of similar topic).
Changing ImDrawList::PushClipRect()'s intersect_with_current_clip_rect path to use ClipRectFull() would also fix this, but it may ambiguous there which behavior would be correct.
Amend 1ec464eb9 .
2026-04-13 14:11:19 +02:00
ocornut
5da7eb0a84
DrawList: remove/strip old FixRectCornerFlags() code.
...
Amend 44a6b493e
2026-04-10 17:42:13 +02:00
ocornut
bbcc83e999
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.mm
# imgui.cpp
2026-04-08 21:40:40 +02:00
ocornut
4a61188322
Version 1.92.8 WIP
2026-04-03 16:15:46 +02:00
ocornut
b1bcb12a62
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2026-04-02 19:25:58 +02:00
ocornut
dac07199cf
Version 1.92.7
2026-04-02 19:22:53 +02:00
ocornut
65ebca8157
Fonts: fixed an issue introduced in 1.92.6 where style.FontBaseSize would be cleared during the first frame if no fonts was explicitely added before.
...
Amend 3aba95060e
2026-04-02 18:35:24 +02:00
ocornut
fe5c5298a6
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# imgui.h
2026-03-31 21:48:34 +02:00
thedmd
bd3c925680
DrawList: PathArcTo(): fixed erroneous segment count for small arcs on large circles. ( #9331 , #9313 )
2026-03-30 12:04:22 +02:00
ocornut
8f63c3691d
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
# imgui_demo.cpp
2026-03-11 21:07:46 +01:00
Brenton Bostick
6f8bdb7bf7
Docs: fixed misc typos ( #9267 )
2026-03-09 14:51:06 +01:00
ocornut
352a7f101a
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_demo.cpp
2026-02-20 18:07:02 +01:00
ocornut
b8a1f74fd9
Version 1.92.7 WIP
...
+ minor demo tweaks.
2026-02-18 16:05:51 +01:00
ocornut
2a1b69f057
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# imgui.h
# imgui_demo.cpp
# imgui_internal.h
2026-02-17 18:09:30 +01:00
ocornut
e118ea06e0
Version 1.92.6
2026-02-17 17:45:07 +01:00
Laurenz Altenmüller
fbe973a8d0
Cast this to (void*) in zero-clearing memset calls to fix -Wnontrivial-memcall ( #9247 , #8295 , #8129 , #8135 )
...
Clang 20+ warns on memset(this, ...) for non-trivially copyable types via -Wnontrivial-memcall.
Should separately investigate -Wnonontrivial-memaccess vs -Wnonontrivial-memcall.
2026-02-16 16:29:00 +01:00
ocornut
3fb22b836b
Merge branch 'master' into docking
2026-02-12 20:08:03 +01:00
ocornut
041cdddf35
Fonts: add new ProggyForever font!
...
Amend f006400
2026-02-12 20:06:33 +01:00
ocornut
a8bf659143
Fonts: AddFontDefaultBitmap() doesn't need to explicitely set OversampleH/OversampleV to 1 as this is automatic.
2026-02-12 19:35:41 +01:00
ocornut
42f28ba305
Fonts: avoid baking ExtraSizeScale twice into Ascent/Descent. (re)
...
Reapply 1bcc23e + offset for our current internal font using it.
2026-02-11 20:26:14 +01:00