Skip to content

#607: #595 Stage 2a — render_content: paint sidebar panel content - #627

Merged
JDonaghy merged 1 commit into
developfrom
issue-607-595-stage-2a-render-content-paint-sideba
Aug 6, 2026
Merged

#607: #595 Stage 2a — render_content: paint sidebar panel content#627
JDonaghy merged 1 commit into
developfrom
issue-607-595-stage-2a-render-content-paint-sideba

Conversation

@JDonaghy

@JDonaghy JDonaghy commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Closes #607

Automated PR opened by coordinator for review of issue #607.

Wires the trait-pure subset of panels.rs::render_sidebar's dispatch into
TuiShellApp::render_content via a new panels::render_sidebar_content,
using layout.sidebar_content_bounds:

- explorer (default panel): extracted into render_explorer_sidebar_content,
  shared by both the live draw_frame path and the ShellApp path. The old
  raw set_cell background fill is replaced with a Backend::draw_status_bar
  blank-segment trick (same one AppShell::render uses for its divider),
  making the whole function trait-only.
- search, debug: already trait-pure; widened backend: &mut TuiBackend to
  &mut dyn quadraui::Backend (#601's technique) so render_content can call
  them without a concrete backend.

Settings, source control, extensions, the plugin extension panel, and the
AI panel remain deferred -- each hits a raw Frame/Buffer chrome renderer
with no Backend::draw_* equivalent yet, documented in shell_app.rs's
module doc with the specific blocker per panel.

Adds a driver_with_shell test proving explorer content (a revealed file
name) paints through the ShellApp path.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@JDonaghy
JDonaghy merged commit 81e0d7b into develop Aug 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

#595 Stage 2a — render_content: paint sidebar panel content

1 participant