Files
RedBear-OS/local
vasilito c8e19ea47f PLAN §17: dialog consistency assessment (44/46 unified, 4-item P1-P4 backlog)
Comprehensive audit of every dialog in tlc — render path, button
source, shadow source, hotkey consistency. Verifies the Phase 16-18
work brought 44/46 dialog surfaces onto the unified render_popup
path (33 filemanager + 5 editor/render + 1 ops/progress), with MC
rounded borders + drop shadow + skin-driven palette inherited
automatically.

Identifies the remaining 7% (the four high-priority items in §17.4):

  P1 (HIGH) widget/dialog.rs:194 — Dialog::render uses raw Clear +
       own Block instead of render_popup, so Dialog::info / confirm /
       confirm_all render flat-border popups with NO drop shadow.
       Only shadow regression in the unified stack. ~5-10 LOC.

  P2 (HIGH) filemanager/overwrite_dialog.rs:138-181 — hand-rolled
       Y/N/All/Skip/Abort colored Span legend. Single most visually
       inconsistent button strip in the codebase. Migrate to
       render_button_row of 5 ButtonSpec. ~25-40 LOC.

  P3 (MED)  filemanager/confirm_dialog.rs:186-191 — '[ Save ] [ Cancel ]'
       Paragraph with theme.hidden. Migrate to 2-button row. ~8-15 LOC.

  P4 (MED)  editor/menubar.rs:520 — F9 dropdown still uses hand-rolled
       Block + Clear instead of render_popup. Filemanager menubar
       dropdown was migrated (c032c9a787); editor was not. ~5-10 LOC.

Plus lower-priority items:
  P5 editor SaveBeforeClose Y/N/Esc legend migration
  P6 viewer/editor SaveBeforeClose unification
  P7 (optional) ~15 decorative key-legend hints migrated to
     ButtonKind::Narrow rows

§17.3 documents the intentional non-targets (full-screen TreeDialog,
F9 menu-bar top rows, viewer render_prompt_overlay) so future
auditors know not to migrate them.

§17.5 codifies the three hotkey patterns (Action OK/Cancel,
Yes/No confirm, Yes/No/All/Skip confirm) and the locale keys
that drive them.

§17.6 sets the acceptance criteria: after P1-P4, grep for raw
Clear should return 5 sites, all defensible. Zero shadow
regressions. Zero hand-rolled button strips that look like
real buttons.

Tests: 1180 passing, 0 failing (no code changes, audit only).
2026-06-21 00:50:05 +03:00
..