A thin floating strip on the right edge with Top, PgUp, Up, Down, PgDn
and End buttons, acting on the last debugger window the user touched
(its name is shown under the buttons). Regular ImGui windows are
scrolled directly. The CPU disassembly and the memory viewers get key
presses instead, and Top/End go to the start or end of RAM.
The strip can be collapsed to a single button, or turned off from the
Misc menu.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The menus are split into lambdas, so they can be shown either side by
side or as submenus of a single "Menu" dropdown. The compact layout is
used on narrow screens, or when chosen from the Misc menu (the default
on phones).
The bar also gets an adjustable left margin (to keep the first button
clear of rounded screen corners, on by default on phones), slightly
taller menu rows in the compact layout, and a Running/Stepping
indicator.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
NativeShutdownGraphics, which Android runs whenever the app loses its
surface, destroyed the imgui context and the ImDebugger along with the
device objects, so window layout and debugger state reset on return.
Now only the device objects go there (the backend already recreates
them), and the context and debugger are torn down in NativeShutdown.
Both configs are still saved on device loss, in case the app is killed
in the background.
imgui.ini is now read and written through our File API rather than
imgui's fopen, which can't reach a memstick behind a content URI.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Symbol list: "Delete symbol" in the context menu, which leaves the code
without a function (useful to test stack walks with missing symbols).
- Disassembly context menu: "Select in symbol list" selects the function in
the list without moving the disassembly, clearing a filter that hides it.
- Callstacks: a thread selector (following the current thread by default, with
a Current button), selectable frames, double-click to show the frame in the
disassembly, and a context menu to show or copy frames.
- Threads: "Show callstack", "Go to PC" and "Go to entry" in the context menu.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Fixes#21636
The Win32 window drew with a fixed 12px font and hardcoded pixel offsets, so at
high DPI the grid ran under the (dialog-unit sized) tab bar. It now uses the
DPI-scaled debugger font, derives the layout from its metrics and the tab bar's
position, and sizes the window to fit. The HalfFloat, Bytes, Shorts and Ints
tabs, which used to show floats, now work.
The ImDebugger VFPU window, which was a TODO, shows the same grid and modes,
with changed values highlighted.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>