text scale caps at 160% — take the ceiling to 200% nf-4k90 ← Beads

closed priority 2 task unassigned activesession:b

Twinned from https://github.com/cfsh/ninefold/issues/440 by tools/beads/import_github.py's reconcile pass.

From Aedan, in chat:

> "We also need to allow font scaling all the way up to say 200%."

Today

TonapseOptions.TextScale multiplies every authored font size via TonapseStyle.Fs(px). Default 1.2 (the "+20% across the board" pass, #257), and clamped to 0.8-1.6 in both the setter and Load(). The options-menu stepper walks that range.

On a Steam Deck 1.6 is still small. Take the ceiling to 2.0.

The work is not just the clamp

Raising the number is one line in two places. What it costs is everything the +60% headroom currently hides:

- Fixed CustomMinimumSize values do not scale. e.g. the menu button is new Vector2(84, 30) in TonapseHome.BuildHeader while its label is Fs(12); at 2.0 the text is 24px in a 30px box. Every hardcoded control size that holds scaled text needs to scale with it (or become a content-fit). - Chips, pills and row labels wrap differently. #366's two-line wrap path in the song row label is tuned against a specific slug at the current scale; row-label-wrap.json asserts it. - The CONTROLS guide and the song grid are the two densest surfaces and the most likely to overflow. - The scale-140.json probe exists for exactly this - extend it (or add a scale-200.json sibling) so the ceiling is a gate, not a hope.

Sequencing note: this lands after the single-screen layout (#439) or is worth re-checking against it - 200% text in half a screen is the case that actually bites, and testing it against the split layout tests the wrong thing.

Dependencies

None.

Comments

No comments.

Add a comment