Lane selection sheds its slab — a hairline edge with a soft halo, intensity inverse to area

The whole-lane wash-and-solid-ring scaled its emphasis with the lane's
area: what read as a ring on a card read as a slab on a column. Resettled
as the system focus ring's vocabulary at selection strength — a hairline
accent edge with a soft accent glow bleeding outward, riding the stroke
shape rather than the translucent plate (a shadow behind it would bleed
through as murk), and no wash at all: nothing tints the cards' backdrop,
and lane colour stays the accent band's alone. Under Increase Contrast the
halo yields to the solid full-alpha ring — "strengthens borders" means
crisper, and a blur is the one thing a border cannot become — so the
setting sees exactly the indicator it always has; cards and trash rows are
card-scale and keep the solid ring at every contrast. One selection
vocabulary, pinned by Accommodations.drawsSelectionHalo and its test.

Claude-Session: https://claude.ai/code/session_014PtZdPwqZuqEDLc6wZMtEy
This commit is contained in:
2026-08-07 11:22:36 -04:00
parent f126614b56
commit 51cf994cb9
3 changed files with 48 additions and 19 deletions
@@ -255,6 +255,15 @@ struct IncreaseContrastTests {
#expect(Accommodations.accentOpacity(base, contrast: .increased) == 1)
}
}
/// The selected lane's glow is the resting treatment's softness, not the indicator itself:
/// under Increase Contrast it yields to the solid full-alpha ring, because "strengthens
/// borders" means crisper and a blur is the one thing a border cannot become.
@Test("The selection halo yields to Increase Contrast")
func theHaloYieldsToIncreaseContrast() {
#expect(Accommodations.drawsSelectionHalo(contrast: .standard))
#expect(!Accommodations.drawsSelectionHalo(contrast: .increased))
}
}
// MARK: - Reduce Transparency