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

commit4672d828520e7f5390df587f07d92a9c2bb268c8
parent57a62b82bb
authorLucas Galante <[email protected]>
date2026-09-20 14:29
Control faces and inset plates take a Material (cce-ui RFC material, step 2c)

ControlPlate::control takes Option<Material> and inset_plate
Option<&Material>; Material::face decodes the colour each site held
(transparent = no face), so nothing on screen moves. cce-ui@cc36c1f.

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

 src/main.rs     | 4 ++--
 src/renderer.rs | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/main.rs b/src/main.rs
index fd18eb1..07a6c41 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -154,14 +154,14 @@ fn emit_control_carve(pc: &mut cce_ui::scene::paint::PaintCtx, carve: ControlCar
             Some(t) => pc.inset_plate_tinted(
                 Rect { x, y, width: w, height: h },
                 (radius, radius, radius, radius),
-                color,
+                cce_ui::scene::Material::face(color).as_ref(),
                 depth,
                 t,
             ),
             None => pc.inset_plate(
                 Rect { x, y, width: w, height: h },
                 (radius, radius, radius, radius),
-                color,
+                cce_ui::scene::Material::face(color).as_ref(),
                 depth,
             ),
         },
diff --git a/src/renderer.rs b/src/renderer.rs
index 0a54956..72c9c54 100644
--- a/src/renderer.rs
+++ b/src/renderer.rs
@@ -534,7 +534,7 @@ impl SystemInterface {
                         h: plate.rect.height,
                         radius: plate.radii.0,
                         depth: plate.depth,
-                        color: plate.face,
+                        color: plate.face_fill(),
                         tint: plate.tint,
                     });
                     self.page_control_relief_marks.push(widgets.len());