Auto-applied suggestions on libcosmic-yoda lib only: unused imports,
unused-by-name params (prefixed with _), redundant mutability. From 113
warnings down to 14 (the 14 remaining are real signals: never-read
fields, unreachable patterns, etc., to be reviewed manually).
Leyoda 2026 – GPLv3
Two perf + correctness wins packaged as +yoda-v2 (version bump 0.1.0-yoda
-> 0.1.0-yoda.2):
1. color_picker::draw() — use the theme: &Theme parameter already passed
to draw() instead of THEME.lock().unwrap().clone() which cloned the
whole Theme on every redraw (src/widget/color_picker/mod.rs:622).
Upstreamable.
2. Dropped feature = "winit" from 21 combined cfg attrs in context_menu.rs,
menu/menu_bar.rs, menu/menu_inner.rs. These triple-gates (wayland +
winit + surface-message) were silently disabling all context-menu and
menubar popup creation in yoda apps (which don't activate the winit
feature). Now the code only gates on wayland + surface-message, which
is our actual runtime path. Matches the ungate we already did on
surface/action.rs in Phase 3d.
cargo check --lib passes. All 4 consumer apps rebuilt + installed as
+yoda-v2 (backup of previous yoda binaries in .pre-yoda-v2 siblings).