Merge branch 'master' into docking

# Conflicts:
#	imgui_internal.h
This commit is contained in:
ocornut
2026-09-02 17:27:51 +02:00
45 changed files with 347 additions and 227 deletions

View File

@@ -1,12 +1,14 @@
HELPER FILES FOR POPULAR DEBUGGERS
-----------------------------------------------------------------------------
HELPER FILES FOR POPULAR DEBUGGERS
-----------------------------------------------------------------------------
imgui.gdb
GDB: disable stepping into trivial functions.
GDB: disable stepping into trivial functions (*1).
(read comments inside file for details)
imgui.natstepfilter
Visual Studio Debugger: disable stepping into trivial functions.
Visual Studio Debugger: disable stepping into trivial functions (*1).
(read comments inside file for details)
imgui.natvis
@@ -15,7 +17,23 @@ imgui.natvis
(read comments inside file for details)
imgui_lldb.py
LLDB-based debuggers (*): synthetic children provider and summaries for Dear ImGui types.
LLDB-based debuggers (*2): synthetic children provider and summaries for Dear ImGui types.
With this, types like ImVector<> will be displayed nicely in the debugger.
(read comments inside file for details)
(*) Xcode, Android Studio, may be used from VS Code, C++Builder, CLion, Eclipse etc.
(*2) Xcode, Android Studio, may be used from VS Code, C++Builder, CLion, Eclipse etc.
-----------------------------------------------------------------------------
NEW! DISABLED STEPPING INTO TRIVIAL FUNCTIONS
-----------------------------------------------------------------------------
Since 1.93.0 WIP (September 2026),
Dear ImGui uses a IM_NODEBUGSTEP macro to tag functions with __declspec(non_user_code)
or [[gnu::artificial]] to automatically tell debuggers to skip them.
(*1) Assuming the new IM_NODEBUGSTEP macro works, using imgui.natstepfilter etc.
may become unnecessary. Exact side effects on user experience yet to be clarified.
Additional references:
https://maskray.me/blog/skipping-boring-functions-in-debuggers
and https://news.ycombinator.com/item?id=42547576

View File

@@ -9,4 +9,5 @@
# * https://sourceware.org/gdb/current/onlinedocs/gdb/Init-File-in-the-Current-Directory.html#Init-File-in-the-Current-Directory
# Disable stepping into trivial functions
# ...since Dear ImGui 1.93.0 WIP (September 2026): we use a IM_NODEBUGSTEP() macro to provide the equivalent feature via [[gnu::artificial]].
skip -rfunction Im(Vec2|Vec4|Strv|Vector|Span)::.+

View File

@@ -14,6 +14,8 @@ If you have multiple VS version installed, the version that matters is the one y
of (not the compiling toolset). This is supported since Visual Studio 2012.
More information at: https://docs.microsoft.com/en-us/visualstudio/debugger/just-my-code?view=vs-2019#BKMK_C___Just_My_Code
Since Dear ImGui 1.93.0 WIP (September 2026): we use a IM_NODEBUGSTEP() macro to provide the equivalent feature via __declspec(non_user_code).
-->
<StepFilter xmlns="http://schemas.microsoft.com/vstudio/debugger/natstepfilter/2010">