file manager
git clone https://git.lucas.co/cce-files.git
Rename the internal backplate vocabulary to root plate (cce-ui RFC 7a-4)
Mechanical rename, no behaviour change: identifiers that carried the
retired word (statics, registry slots, setters, trait methods, locals)
now say root_plate, and comment prose says root plate.
Co-Authored-By: Claude Fable 5.1 <[email protected]>
CLAUDE.md | 2 +-
src/main.rs | 16 ++++++++--------
src/pages/browse.rs | 2 +-
src/pages/space.rs | 2 +-
src/preview_pane.rs | 4 ++--
5 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/CLAUDE.md b/CLAUDE.md
index 3d1c534..3023fe1 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -43,7 +43,7 @@ There are no composite container widgets. Every widget is owned outright by the
**When adding a widget, add it to both halves of that pass** — the teardown block and the registration block. Skipping the teardown leaves hierarchy links alive across frames.
-(`BrowseContainer` and `NetworkContainer` were shims holding children as `*mut dyn Element`; they dissolved in Phase 6y along with the root `Backplate` and `SplitBox`. Their positioning duplicated what the pages already computed from the pane rect — that coincidence was the Phase 0 double-paint — and the only part worth keeping, the divider, became `SplitPane`. See the comment above `SplitPane` in `main.rs`.)
+(`BrowseContainer` and `NetworkContainer` were shims holding children as `*mut dyn Element`; they dissolved in Phase 6y along with the root plate container and `SplitBox`. Their positioning duplicated what the pages already computed from the pane rect — that coincidence was the Phase 0 double-paint — and the only part worth keeping, the divider, became `SplitPane`. See the comment above `SplitPane` in `main.rs`.)
### Three pages, one preview
- **Browse** — the `List` widget (columnar, integrated search box) plus a `Breadcrumb`. The right pane is a `Preview` widget, split from the list by `SplitPane` — app-owned (`main.rs`), carrying the `SplitBox` two-child horizontal math verbatim plus the divider quad, its hover tint, and the proportion drag.
diff --git a/src/main.rs b/src/main.rs
index 2fbb043..7942bcf 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -567,7 +567,7 @@ impl FilesystemApp {
cce_ui::widget::hover_animation::reset_frame_registration();
cce_ui::widget::hover_animation::set_cursor_pos(self.cursor_x, self.cursor_y);
- // Root Backplate DISSOLVED: top-level widgets register parentless below; the
+ // root plate container DISSOLVED: top-level widgets register parentless below; the
// window plate tuple is emitted in the legacy aggregate order (after the plain
// child quads).
@@ -588,7 +588,7 @@ impl FilesystemApp {
let has_sidebar = false;
let sidebar_w = if has_sidebar { self.paginator.sidebar_w() } else { 0.0 };
- // DE-wide plate rim padding (style.surface.backplate.padding).
+ // DE-wide plate rim padding (style.surface.root plate.padding).
let pad = cce_ui::layout::root_plate_padding();
let browse_x = if has_sidebar { sidebar_w + pad + 1.0 } else { pad };
let usable_w = self.width as f32 - sidebar_w - (if has_sidebar { 1.0 } else { 0.0 }) - 2.0 * pad;
@@ -647,7 +647,7 @@ impl FilesystemApp {
// Each top-level widget rendered through the same immediate-mode path the root
// recursion used, replicating the legacy TUPLE ORDER: plain child quads first,
- // then the dissolved root Backplate's plate, then the rounded children (the
+ // then the dissolved root plate container's plate, then the rounded children (the
// aggregate emitted all plain quads before the rounded root bg).
let mut window_pc = pages::PageContent::new();
{
@@ -1140,7 +1140,7 @@ impl Application for FilesystemApp {
Some(&mut self.ui_context)
}
- fn is_movable_backplate_at(&self, px: f32, py: f32) -> bool {
+ fn is_movable_root_plate_at(&self, px: f32, py: f32) -> bool {
// 1. If dialog is open, do not drag
if self.open_with_dialog.is_some() {
return false;
@@ -1168,7 +1168,7 @@ impl Application for FilesystemApp {
return false;
}
// The dissolved List blocked window drags via its registered ScrollBox
- // (blocks_backplate_drag); veto app-side now or every row press starts a
+ // (blocks_root_plate_drag); veto app-side now or every row press starts a
// compositor window move and the app never sees it.
let l = &self.browse.list;
if px >= l.x && px <= l.x + l.w && py >= l.y && py <= l.y + l.h {
@@ -1190,7 +1190,7 @@ impl Application for FilesystemApp {
return false;
}
}
- // 5. Root Backplate dissolved: the surface itself is the movable plate; drag
+ // 5. root plate container dissolved: the surface itself is the movable plate; drag
// anywhere a drag-blocking widget isn't.
self.ui_context.drag_allowed_at(px, py)
}
@@ -1313,7 +1313,7 @@ impl Application for FilesystemApp {
WindowSettings {
title: title.to_string(),
// The cce- prefix matters: the compositor's is_cce_app gate keys
- // blur and the backplate corner radius off it.
+ // blur and the root plate corner radius off it.
app_id: "cce-filesystem-chooser".to_string(),
width: 900,
height: 500,
@@ -1563,7 +1563,7 @@ impl Application for FilesystemApp {
let mut pc = cce_ui::scene::paint::PaintCtx::new();
let (fw, fh) = (self.width as f32, self.height as f32);
- // The window plate — the dissolved root Backplate as a lit object: page-low
+ // The window plate — the dissolved root plate container as a lit object: page-low
// color at the configured opacity, perimeter rolled over bevel_width so the
// surface reads as a physical plate rather than a flat fill.
let mut plate = cce_ui::color::page_low_color();
diff --git a/src/pages/browse.rs b/src/pages/browse.rs
index dab3def..c5c1bce 100644
--- a/src/pages/browse.rs
+++ b/src/pages/browse.rs
@@ -185,7 +185,7 @@ pub fn view(state: &mut BrowseState, view_dropdown: &mut cce_ui::widget::Adapted
let text_dim = cce_ui::color::TEXT_DIM;
- // The pane rect already sits backplate_padding off the plate rim — no
+ // The pane rect already sits root_plate_padding off the plate rim — no
// second inset here, or the list lands 16+12 from the edge while apps
// that place content at the pane rect (cce-data-editor's tree) sit at 16.
let gap = cce_ui::layout::root_plate_gap();
diff --git a/src/pages/space.rs b/src/pages/space.rs
index c5fa8fb..fe7e738 100644
--- a/src/pages/space.rs
+++ b/src/pages/space.rs
@@ -302,7 +302,7 @@ pub struct SpaceState {
/// Rect the current `tiles` were laid out for — a resize invalidates them.
laid_out: (f32, f32, f32, f32),
/// The map region as of the last `view`. Input handlers need it to tell a
- /// press on the treemap from one on the window backplate behind it.
+ /// press on the treemap from one on the window root plate behind it.
pub map_rect: (f32, f32, f32, f32),
pub hovered: Option<usize>,
/// Selection is held by path, not index: a relayout renumbers every tile.
diff --git a/src/preview_pane.rs b/src/preview_pane.rs
index bfb873d..22f29d7 100644
--- a/src/preview_pane.rs
+++ b/src/preview_pane.rs
@@ -286,7 +286,7 @@ impl PreviewPane {
// 1. Top pane: File Preview Section. The section frame spans the FULL
// pane rect (left = cx - pad cancels SectionContext's inner pad), so
// the well edge sits at the pane edge like the list across the split —
- // the visible split gap is exactly backplate_gap on both sides.
+ // the visible split gap is exactly root_plate_gap on both sides.
// The well's top edge sits AT the pane top, aligned with the
// breadcrumb across the split (finish() draws from top+7, so the
// fallback frame gets top-7 to land on the same edge).
@@ -354,7 +354,7 @@ impl PreviewPane {
}
// 2. Bottom pane: Details Section. The visible gap between the wells
- // is exactly backplate_gap — the same separator width as everywhere
+ // is exactly root_plate_gap — the same separator width as everywhere
// else on the plate (it was a hardcoded 12+7=19px before).
let details_top = cy + half_h + cce_ui::layout::root_plate_gap();
let icon = if self.is_dir { "📁" } else { "📄" };