You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Sub-task 2/4 of #592. Read #592 first — it holds the root cause, the full 13-field table, and the evidence that src/gtk/draw.rs has no live callers.
What
Port the five panel surfaces from the orphaned src/gtk/draw.rs path onto the live GTK ShellApp::render_content path.
screen.* field
dead GTK site
Note
quickfix
draw.rs:2389
bottom_tabs
draw.rs:2283, :591/595/612
terminal / debug-output panel
debug_toolbar
draw.rs:2448
panel_hover
draw.rs:3484
ai_panel
draw.rs:3868
GTK has no PANEL_AI arm at all — mod.rs:8207 reads "not yet migrated"
Why this group
These are panel-region surfaces rather than editor overlays: they paint into the bottom
panel and the sidebar, and they share the SidebarSystem / TabBar / StatusBar idiom. ai_panel is the odd one out and is called out deliberately — it is not merely an
unpainted field, it has no GTK panel arm, so expect it to be the bulk of this issue.
If it proves larger than the other four combined, split it out into its own issue rather
than letting it swallow the session; say so in a comment and carry on with the other four.
⚠ The TUI line numbers in #592's table are pre-#634. The TUI cutover to run_with_shell
moved those paint sites into src/tui_main/shell_app.rs. Locate the current TUI call site by
symbol, not by the line numbers in that table.
Sub-task 2/4 of #592. Read #592 first — it holds the root cause, the full 13-field table, and the evidence that
src/gtk/draw.rshas no live callers.What
Port the five panel surfaces from the orphaned
src/gtk/draw.rspath onto the live GTKShellApp::render_contentpath.screen.*fieldquickfixdraw.rs:2389bottom_tabsdraw.rs:2283,:591/595/612debug_toolbardraw.rs:2448panel_hoverdraw.rs:3484ai_paneldraw.rs:3868PANEL_AIarm at all —mod.rs:8207reads "not yet migrated"Why this group
These are panel-region surfaces rather than editor overlays: they paint into the bottom
panel and the sidebar, and they share the
SidebarSystem/TabBar/StatusBaridiom.ai_panelis the odd one out and is called out deliberately — it is not merely anunpainted field, it has no GTK panel arm, so expect it to be the bulk of this issue.
If it proves larger than the other four combined, split it out into its own issue rather
than letting it swallow the session; say so in a comment and carry on with the other four.
Design
ScreenLayout, buildthe primitive through the existing shared adapter in
render.rs, callBackend::draw_*inside
render_content's frame scope.draw.rs, lift it torender.rsrather than copying it.src/gtk/draw.rshere — GTK live render path silently drops 13 populated ScreenLayout fields (rest of #587's blast radius) #592-D does that.⚠ The TUI line numbers in #592's table are pre-#634. The TUI cutover to
run_with_shellmoved those paint sites into
src/tui_main/shell_app.rs. Locate the current TUI call site bysymbol, not by the line numbers in that table.
Acceptance criteria
src/gtk/testing.rs,harness from Adopt quadraui's GtkDriver — vimcode has zero GTK black-box tests though the harness shipped in quadraui#301 #646) asserting on rendered output — not on
ScreenLayoutfieldpopulation, which is already true today and is why this went unnoticed.
src/render.rs.cargo build && cargo testEXIT=0.Files
src/gtk/mod.rssrc/render.rssrc/gtk/testing.rsOut of scope
draw.rs(GTK live render path silently drops 13 populated ScreenLayout fields (rest of #587's blast radius) #592-D).