git.lucas.co / cce-system-interface
system settings
git clone https://git.lucas.co/cce-system-interface.git

commitd25ca3619f85ee010aadab7169a06554c782c938
parent1dbc1cf1ab
authorLucas Galante <[email protected]>
date2026-09-24 12:48
Root plate: the toolkit's standard spec, not a hand copy

The window's base is now cce-ui's PlateSpec::window (PaintCtx::root_plate)
— the DE root material at its opacity, the shared silhouette arc on all
four corners, the perimeter rolled over bevel_width — in place of the
eight-line block every app carried. The opacity override in that block
was a no-op (root_plate_opacity IS page_low_color's alpha), so the
pixels are unchanged; what changes is that the standard has one home.

Co-Authored-By: Claude Fable 5.1 <[email protected]>

 src/main.rs | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/src/main.rs b/src/main.rs
index 07a6c41..f163f16 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -364,21 +364,20 @@ impl cce_ui::engine::Application for SystemInterface {
             }
         }
 
-        // One glass slab (data-editor's idiom): the beveled window plate, with the
-        // status bar carved into it as a step — everything else paints on top.
+        // One glass slab (data-editor's idiom): the root plate, with the status
+        // bar carved into it as a step — everything else paints on top. The
+        // standard spec (cce-ui `PlateSpec::window`) in this app's own dark
+        // green tint at the DE root opacity: a deliberate deviation from the
+        // DE root colour, and the one thing here that is not the standard.
         {
             let mut plate = cce_ui::color::to_linear([0x0a as f32 / 255.0, 0x1a as f32 / 255.0, 0x0e as f32 / 255.0, 1.0]);
             if plate[3] > 0.001 {
                 plate[3] = cce_ui::color::root_plate_opacity();
             }
-            // PlateSpec (cce-ui RFC 7b): the hardcoded r=12 detached this
-            // plate's corners from the compositor's silhouette clip.
-            pc.plate_spec(&cce_ui::scene::paint::PlateSpec {
-                rect: Rect { x: 0.0, y: 0.0, width, height },
-                material: cce_ui::scene::Material::opaque(plate),
-                window_corners: (true, true, true, true),
-                depth: cce_ui::layout::bevel_width(),
-            });
+            pc.plate_spec(
+                &cce_ui::scene::paint::PlateSpec::window(width, height)
+                    .with_material(cce_ui::scene::Material::opaque(plate)),
+            );
             let sb_h = self.status_height;
             let depth = cce_ui::layout::bar_wall_width().min(sb_h * 0.6);
             pc.recess_edges(