Skip to content

fix: a11y improvements#7051

Merged
vitormattos merged 10 commits intomainfrom
fix/a11y-improvements
Mar 2, 2026
Merged

fix: a11y improvements#7051
vitormattos merged 10 commits intomainfrom
fix/a11y-improvements

Conversation

@vitormattos
Copy link
Copy Markdown
Member

No description provided.

… hint

Add getPageAriaLabel callback prop to PDFElements which generates
context-aware aria-labels for each page overlay. Labels vary by:
- single vs multi-document envelope (includes doc name and number)
- adding mode vs read-only (includes 'Press Enter or Space' hint)

Unit tests cover all four combinations.

Signed-off-by: Vitor Mattos <[email protected]>
Adds an alt prop with a translatable default ('Signature preview')
so consumers can pass context-specific descriptions while keeping
a sensible fallback for screen readers.

Signed-off-by: Vitor Mattos <[email protected]>
…ons modal

- Add sr-only aria-live='polite' region that announces 'Select a
  signer to set their signature position' when no signer is selected
- Add aria-label to NcChip with document status for screen readers
- Wrap instruction text in <span> to prevent it leaking into the
  Cancel button's accessible name

Signed-off-by: Vitor Mattos <[email protected]>
…igner

- Add signerLinkAriaLabel computed to NcListItem so screen readers
  announce 'Edit signer {name}' or 'Signer {name} (already signed)'
- Add aria-hidden to NcAvatar to prevent initials leaking into the
  accessible name (already conveyed by linkAriaLabel)
- Add aria-label to identification method and status NcChips
- Add sr-only span for disabled tooltip text
- Add aria-disabled to the list item when signer or method is disabled

Signed-off-by: Vitor Mattos <[email protected]>
…e action labels

- Add role='button', tabindex=0 and keydown handlers to .no-signatures
  div so keyboard users can activate it to start editing
- Use translatable t('libresign', 'Delete {type}') and t('libresign',
  'Edit {type}') in action button labels
- Pass :alt with 'Current {type}' to PreviewSignature for context

Signed-off-by: Vitor Mattos <[email protected]>
Adds aria-label='PDF document to sign' to the PdfEditor component
so screen readers and Playwright tests can locate and scope within
the PDF viewer region in the signing view.

Signed-off-by: Vitor Mattos <[email protected]>
Full E2E test covering the complete self-signing flow:
- Upload PDF via URL
- Add signer by account with drawn signature method
- Place signature position on PDF canvas using hover/rAF sync
- Request and send the document
- Assert signature position box is visible in signing screen
- Draw signature, save and confirm

Uses semantic locators throughout (getByRole, getByLabel, getByPlaceholder)
to validate accessibility at each step.

Signed-off-by: Vitor Mattos <[email protected]>
@vitormattos vitormattos added this to the Next Major (34) milestone Mar 2, 2026
@vitormattos vitormattos self-assigned this Mar 2, 2026
@github-project-automation github-project-automation Bot moved this to 0. Needs triage in Roadmap Mar 2, 2026
@vitormattos
Copy link
Copy Markdown
Member Author

/backport to stable33

@vitormattos vitormattos merged commit 1af7f1d into main Mar 2, 2026
69 checks passed
@github-project-automation github-project-automation Bot moved this from 0. Needs triage to 4. to release in Roadmap Mar 2, 2026
@vitormattos vitormattos deleted the fix/a11y-improvements branch March 2, 2026 18:25
@vitormattos
Copy link
Copy Markdown
Member Author

/backport to stable32

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

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

1 participant