Skip to content

Phase C — duplication cleanup: editor primitive + chrome lifts (umbrella) #275

Description

@JDonaghy

Umbrella issue tracking the Phase C — duplication cleanup arc planned in docs/PHASE_C_PLAN.md.

The B.5c → #271 arc closed the trait surface and runner-crate vision. What's still duplicated between the vcd (TUI) and vimcode (GTK) binaries is:

  1. The editor "widget" itself — tui_main/render_impl.rs::render_window (~600 LOC) and gtk/draw.rs::draw_window (~800 LOC) paint the same RenderedWindow data into different surfaces.
  2. Five remaining sidebar surfaces — debug, source control, extension, AI, settings chrome — plus the scrollbar paint.

Phase C lifts the editor paint into a quadraui::Editor primitive (Phase 1 only — engine slice deferred) and lifts the easy chrome (scrollbar / settings header / AI sidebar). Three remaining surfaces (extension, debug, source control) deferred as separate follow-up issues.

Stages

  • Stage 1 — quadraui::Editor primitive + TUI/GTK rasterisers — sub-issue
  • Stage 2 — quadraui::Scrollbar primitive — sub-issue
  • Stage 3 — Settings panel chrome helper — sub-issue
  • Stage 4 — AI sidebar MessageList primitive — sub-issue

Predecessor / successor

Deferred follow-ups (filed separately)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestinfrastructureBuild, CI, distributionuiUI/rendering

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions