Skip to content

Name the whiteboard pens and mark the one in use - #279

Merged
jserv merged 1 commit into
sysprog21:mainfrom
LeafYeh1:whiteboard-pen-names
Oct 12, 2026
Merged

jserv merged 1 commit into
sysprog21:mainfrom
LeafYeh1:whiteboard-pen-names

Conversation

@LeafYeh1

@LeafYeh1 LeafYeh1 commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Each pen swatch was named from its hex value, so VoiceOver read "Pen #101418" character by character and Voice Control expected it spoken, and the selected pen was marked only by a selected class that assistive technology cannot see. The swatches now take a color name ("Black pen", "Red pen", ...) from PEN_COLORS, and paintToolState sets aria-pressed on them as it already does for the eraser and its sizes. The ring around the selected swatch is drawn from aria-pressed instead of the class, the same way .board-size is, so the drawn state and the announced state cannot disagree.

tests/browser/whiteboard-toolbar.test.js finds each pen by its accessible name, then after picking a pen and then the eraser asks the whole toolbar which buttons report themselves pressed and checks which pens are drawn with the ring; on main it fails because no button is named "Black pen". ./scripts/test.sh passes locally; the lanes it skipped here (Java, cargo-audit, actionlint, ruff, shellcheck) do not cover this change.

Closes #274

cubic-dev-ai[bot]

This comment was marked as resolved.

@LeafYeh1
LeafYeh1 marked this pull request as draft October 11, 2026 15:16
@LeafYeh1
LeafYeh1 force-pushed the whiteboard-pen-names branch from f8f12d5 to fa596de Compare October 11, 2026 15:19
Comment thread tests/browser/whiteboard-toolbar.test.js Outdated
@LeafYeh1
LeafYeh1 force-pushed the whiteboard-pen-names branch from fa596de to 16f16c9 Compare October 11, 2026 15:51
@LeafYeh1
LeafYeh1 marked this pull request as ready for review October 11, 2026 15:52
cubic-dev-ai[bot]

This comment was marked as resolved.

@jserv
jserv requested review from ColtenOuO and alanhc October 11, 2026 16:02
Comment thread web/interview.js
Each pen swatch was named after its hex value, so VoiceOver read out
"Pen #101418" and Voice Control expected it spoken, and the selected
pen was marked only by a class that assistive technology cannot see.
Give each pen a color name and draw the swatch's ring from
aria-pressed, as the eraser sizes already do, so the state that is
drawn and the state that is announced cannot disagree.

Closes sysprog21#274
@LeafYeh1
LeafYeh1 force-pushed the whiteboard-pen-names branch from 16f16c9 to 161fb60 Compare October 12, 2026 03:45
@jserv
jserv requested a review from ColtenOuO October 12, 2026 04:06

@ColtenOuO ColtenOuO left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, LGTM.

@jserv
jserv merged commit df69ac3 into sysprog21:main Oct 12, 2026
6 checks passed
@jserv

jserv commented Oct 12, 2026

Copy link
Copy Markdown
Contributor

Thank @LeafYeh1 for contributing!

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.

Whiteboard pen swatches are named by hex code and do not expose which one is selected

3 participants