Skip to content

Add crossbar-on-7 option to distinguish 1 from 7#1

Open
laz- wants to merge 1 commit into
PebbleYYC:mainfrom
laz-:7-crossbar
Open

Add crossbar-on-7 option to distinguish 1 from 7#1
laz- wants to merge 1 commit into
PebbleYYC:mainfrom
laz-:7-crossbar

Conversation

@laz-

@laz- laz- commented May 28, 2026

Copy link
Copy Markdown

Summary

  • Adds a Crossbar on 7 toggle in watch settings (off by default)
  • When enabled, draws a tapered diagonal crossbar through the middle of the scaled '7' glyph, making it visually distinct from '1' in the BrutalTime font
  • Bumps settings storage version to v8 with a clean migration path (defaults to false for existing users)

Before / After

1 (reference) 7 — before 7 — after
tall, narrow, serif corners identical shape to 1 crossbar cuts diagonally through the stem

Implementation

The crossbar is painted directly into the scaled glyph buffer (s_scale_buf) after scale_glyph() runs. Six pixel blocks in glyph-relative coordinates produce a 3-2-1 tapered bar:

col:  2 3 4
row 5: ■ ■ ■
row 6:   ■ ■
row 7:     ■

Each block is expanded to s_scale_x × s_scale_y pixels (4×5 on Pebble Time, 6×7 on Emery) matching the existing scaling system. The feature is gated behind #ifndef PBL_PLATFORM_APLITE consistent with the rest of the big-font scaling code.

Settings migration

CURRENT_SETTINGS_VERSION incremented from 7 → 8. The v7 → v8 upgrade path sets sevenCrossbar = false and re-saves, so no existing user sees a behavior change on update.

@laz-

laz- commented May 28, 2026

Copy link
Copy Markdown
Author
crossbar_comparison

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant