| 312 |
312 |
|
//! stroke", "focus cue", "wants focus". "Caret" is a different thing — the text
|
| 313 |
313 |
|
//! cursor inside a field — and keeps its name.
|
| 314 |
314 |
|
//!
|
|
315 |
+ |
//! # The three tones, and what a colour claims
|
|
316 |
+ |
//!
|
|
317 |
+ |
//! One rule, settled 2026-08-16, for how colour says whether a thing can be
|
|
318 |
+ |
//! used. Every renderer answers to it, and it is stated here because the
|
|
319 |
+ |
//! description is what names the intents.
|
|
320 |
+ |
//!
|
|
321 |
+ |
//! | the thing | intent |
|
|
322 |
+ |
//! |-----------|--------|
|
|
323 |
+ |
//! | active, emphasised, the thing itself | `content` |
|
|
324 |
+ |
//! | inactive but usable: it still answers a press | `content-secondary` |
|
|
325 |
+ |
//! | inert: disabled, or not a control at all | `content-muted` |
|
|
326 |
+ |
//!
|
|
327 |
+ |
//! `content-muted` is the one with a claim in it. [`State::Disabled`] resolves
|
|
328 |
+ |
//! to it, so a live control wearing it is telling the user it will not answer —
|
|
329 |
+ |
//! and being wrong about that is worse than being quiet, because the user's
|
|
330 |
+ |
//! response is to stop trying. A sortable column heading that was never sorted,
|
|
331 |
+ |
//! and every unchosen option in a radio group, both read as dead lists that way;
|
|
332 |
+ |
//! those are the two this rule was written out of. What is legitimately muted is
|
|
333 |
+ |
//! a caption, a hint, a placeholder, a meter's reading, an axis label: text that
|
|
334 |
+ |
//! was never going to answer anything.
|
|
335 |
+ |
//!
|
|
336 |
+ |
//! The three are one ramp and not three colours. `makeover`'s `Emphasis` derives
|
|
337 |
+ |
//! the quieter two from the ink, so "one step back" means the same distance in
|
|
338 |
+ |
//! every theme and a renderer cannot land between them by picking its own.
|
|
339 |
+ |
//!
|
| 315 |
340 |
|
//! # Where the description stops
|
| 316 |
341 |
|
//!
|
| 317 |
342 |
|
//! The rule is that a member is added when an app needs a fact the vocabulary
|