The presenter's bar pages with the same chevrons as the viewer's bar
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Refactor
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- frontend
Research direction
Start by comparing the previous and next buttons in src/deck-engine/DeckChromeViewer.tsx, which already use ChevronLeftRegular and ChevronRightRegular with aria-labels, against the text arrows in src/deck-engine/DeckChromePresenter.tsx. Swap the presenter's arrows for the same icons at a size that fits that bar, and add the matching aria-labels without changing paging, disabled states or the counter. Done when both bars show chevrons, a screen reader names both presenter buttons, and the engine's tests pass.
Written by the indexing model from the issue text.
Description
Why
The player's two bars page through a deck with different marks. The viewer's bar (src/deck-engine/DeckChromeViewer.tsx) uses thin chevrons, ChevronLeftRegular and ChevronRightRegular, and its comment explains the choice. The presenter's bar (src/deck-engine/DeckChromePresenter.tsx) uses the text arrows ← and →. Anyone who switches between Viewer and Podium sees the same control drawn two ways, and a host that embeds the engine inherits both.
What changes
- The presenter's previous and next buttons use the same chevron icons as the viewer's bar, at the size that suits the presenter bar.
- Both buttons get an
aria-label("Previous slide" and "Next slide"), as the viewer's buttons have. With the text arrows gone, the buttons have no other accessible name. - Paging behaviour, disabled states and the counter stay as they are.
Done when
- Both bars show chevrons for previous and next, at every width.
- A screen reader names both presenter buttons.
- The engine's tests pass.
Out of scope
- Text buttons that pair a word with an arrow, such as "← Back" and "Next →" in the notes window. They follow a different pattern.
- Any other change to either bar's layout.
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- Avg merge
- 30m
- Merged PRs (30d)
- 9
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from johnfrog76/connected-deck
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
johnfrog76/connected-deck#21 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
johnfrog76/connected-deck#19 ·
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 70/100
johnfrog76/connected-deck#23 ·
-
enhancement good first issue
Difficulty 3/5 Half a day Newbie friendliness 70/100
johnfrog76/connected-deck#22 ·
-
enhancement
Difficulty 3/5 Half a day Newbie friendliness 66/100
johnfrog76/connected-deck#20 ·
All issues in johnfrog76/connected-deck
Similar issues
-
needs-area
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Azure/typespec-azure#5936 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 Half a day Newbie friendliness 72/100
vercel-labs/scriptc#2910 ·
Maintainers usually reply within 1 day
-
automation missing-model model-sync provider:fireworks-ai
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
anomalyco/models.dev#12458 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day