ui(properties): no raw typography left in the panel, and one heading rank

The earlier pass checked wiring only; this is the typography sweep. Raw Foreground/FontSize
labels are gone from the elements panel:

- Opacity, Timer (minutes) and URI are headings above their control (PropertyHeader), with the
  control row on the panel's 10px indent — the same shape as Border Thickness/Opacity.
- Scroll speed, scoreboard Opacity/Text size and their value readouts are PropertyFieldLabel.
- The drag hint and the scoreboard sign-in note are PropertyHint.
- Simulate (dev) keeps its orange, gains the field-label typography.
- Edge, Text colour and Background were PropertySubHeader/SubHeader: ONE heading rank now, so
  PropertySubHeader and the legacy SubHeader are deleted from Themes/Controls.xaml.
- DeveloperPanel — the last panel with raw typography and an unstyled CheckBox — now uses the
  same styles, and PropertiesStyleTests accepts PropertyPillCheck (the guard went stale when
  every check box became a pill switch). 18 tests pass; Release 0 warnings.
This commit is contained in:
2026-11-01 16:26:20 -08:00
parent 790cff45c2
commit 54902cb838
4 changed files with 47 additions and 48 deletions
+10 -2
View File
@@ -43,9 +43,17 @@ public class PropertiesStyleTests
AssertStyled(combo, "YtComboBox",
$"{where}: a ComboBox is not styled with YtComboBox — it renders with the light system template");
// Every check box is a pill switch (creator ruling, 2026-11-01: "all checkboxes as
// pill switches"), so PropertyPillCheck is the theme style that matters here; YtCheckBox
// is still accepted where a plain box is deliberate.
foreach (var check in doc.Descendants().Where(e => e.Name.LocalName == "CheckBox"))
AssertStyled(check, "YtCheckBox",
$"{where}: a CheckBox is not styled with YtCheckBox — it renders with the light system template");
{
var style = (string?)check.Attribute("Style") ?? string.Empty;
Assert.True(
style.Contains("PropertyPillCheck", StringComparison.Ordinal)
|| style.Contains("YtCheckBox", StringComparison.Ordinal),
$"{where}: a CheckBox carries no theme style — it renders with the light system template");
}
}
// 3. Every field in the properties panel carries the compact theme style and paints