# TASK 62 — The border-colour field shows the colour's name next to the hex **Status:** ✅ Done — shipped 2026-10-21. ## What it is The creator (2026-10-21), on Live → Layers → webcam → Properties → **Border Color**, after TASK 60 gave the drop-down list its names: > the border color drop drown box content should also include the name of the color next > to the hex value as they in the drop-down list box So the row that shows the **current** colour now reads the same way the list rows do: ``` Border Color [#2c3a5c] Azure [...] ``` ## How it is done - **`SceneElement.BorderColorName`** — the palette's name for the current border colour, raised whenever `BorderColor` changes. **Empty for a custom hex** the creator typed (there is no name for it — the field shows the hex alone). - The **hex field keeps a fixed width** (`Width="60"`): it used to fill the row, so a name beside it would have drifted to the far edge instead of sitting next to the hex. - The name is a dimmed `TextBlock` (`#a0a0b0`, 11px) in the same horizontal row as the field, after it — the same reading order as the drop-down list (`#e94560 Crimson`). **The field stays editable** — the hex is still typed into it (the picker's `...` button opens the named list). Making the field read-only with a combined "#hex Name" string was the alternative; it would have taken away typing a custom hex, so the name sits beside the field instead. ## `BorderColorPalette.NameOf` changed It used to fall back to **the hex itself** for a colour outside the palette ("there is no name to give it"). It now returns an **empty string** — "no name" is the honest answer, and the caller decides what to show (the field shows the hex alone). The TASK 60 test assertion was updated with it. ## Tests `ytLive.Tests/BorderColorNameTests.cs` — the ONE test for this change: the model carries the name ("Crimson") and raises it when the colour changes, a custom hex has no name, the hex field has a fixed width, and the name sits in the same row as the field, after it.