Skip to content

[Due for payment 2026-06-18] [$250] [A11y] Screen Reader: Sign in: The button to dismiss the picker view is not announced #77534

Closed
Expensify/react-native-picker-select
#24

Description

@olenamihno

Action Performed:

  1. Using iOS VoiceOver, open the Expensify app
  2. Swipe to the language dropdown button and double-tap to activate
  3. Swipe to the 'Done' button
  4. Swipe once left
  5. Note what is focused and announced

Expected Result:

The focused control should be announced with a button role and descriptive name, e.g.:

  • 'Dismiss'

Actual Result:

The button to dismiss the picker view is not announced.

Area issue was found in:

Sign in

Failed WCAG checkpoints

WCAG 4.1.2 Name, Role, Value
https://www.w3.org/WAI/WCAG22/Understanding/name-role-value

User impact:

Providing role, state, and value information on all user interface components enables compatibility with assistive technology, such as screen readers, screen magnifiers, and speech recognition software, used by people with disabilities.

Suggested resolution:

Apply accessibilityRole="button" to announce the role and descriptive accessibilityLabel, e.g.:

Environment:

Apple iPhone 11 - iOS 17.5.1, H0T Mobile - Native (No mobile browser)

Screenshots/Videos

Image
Bug7006689_1763405659909.The_button_to_dismiss_the_picker_view_is_not_announced.mp4

Version Number: Production
Reproducible in staging?: NA
Reproducible in production?: Yes
Email or phone of affected tester (no customers): No
Logs: https://stackoverflow.com/c/expensify/questions/4856 NA
Notes/Photos/Videos: Any additional supporting documentation Yes
Expensify/Expensify Issue URL: https://platform.applause.com/company/12102/products/36628/community-issues/7006689
Issue reported by: NA
Slack conversation: NA

Issue OwnerCurrent Issue Owner: @QichenZhu
Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~022031489015136987485
  • Upwork Job ID: 2031489015136987485
  • Last Price Increase: 2026-03-10
  • Automatic offers:
    • FitseTLT | Reviewer | 111642093

Activity

  1. melvin-bot commented on Dec 12, 2025

    @melvin-bot

    📣 @olenamihno! 📣
    Please report bugs or suggest features in the #expensify-open-source Slack channel, don't directly open issues in this repo!
    Instructions here to join the channel 📖

  2. added a commit that references this issue on Jan 8, 2026
    4f326fc
  3. added a commit that references this issue on Jan 19, 2026
    188227e
  4. rushatgabhane commented on Mar 3, 2026

    @rushatgabhane
    Member

    fixed by #81013

  5. 87 remaining items

  6. changed the title [-][$250] [A11y] Screen Reader: Sign in: The button to dismiss the picker view is not announced[/-] [+][Due for payment 2026-06-18] [$250] [A11y] Screen Reader: Sign in: The button to dismiss the picker view is not announced[/+] on Jun 11, 2026
  7. melvin-bot commented on Jun 11, 2026

    @melvin-bot

    Reviewing label has been removed, please complete the "BugZero Checklist".

  8. melvin-bot commented on Jun 11, 2026

    @melvin-bot

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.4.5-6 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

    If no regressions arise, payment will be issued on 2026-06-18. 🎊

    For reference, here are some details about the assignees on this issue:

  9. melvin-bot commented on Jun 11, 2026

    @melvin-bot

    @QichenZhu @mallenexpensify The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]. If no checklist is needed for this issue, you can click: [no checklist button]

  10. melvin-bot commented on Jun 15, 2026

    @melvin-bot

    @QichenZhu Whoops! This issue is 2 days overdue. Let's get this updated quick!

  11. QichenZhu commented on Jun 17, 2026

    @QichenZhu
    Contributor

    BugZero Checklist:

    • [Contributor] The offending PR and associated issue have been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.

      Link to the comment on the PR: N/A. New feature.
      Link to the comment on the Issue: N/A.

    • [Contributor] If the regression was CRITICAL (e.g. interrupts a core flow) A discussion in #expensify-open-source has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner.

      Link to discussion: N/A.

    • [Contributor] If it was decided to create a regression test for the bug, please propose the regression test steps using the template below to ensure the same bug will not reach production again.

    • [BugZero Assignee] Create a GH issue for creating/updating the regression test once above steps have been agreed upon.

      Link to issue: https://github.com/Expensify/Expensify/issues/650513

    Regression Test Proposal

    Precondition:

    • iOS native only
    • Physical device required

    Test:

    1. Enable VoiceOver
    2. Go to the Sign In page
    3. Swipe to the language dropdown button and double-tap to activate
    4. Swipe to the Done button
    5. Swipe left once to the hidden dismiss button
    6. Verify that Dismiss, button is announced

    Do we agree 👍 or 👎

    Zapier Logs Run ID: 00040eee-d2a8-a705-1662-785170355f44
  12. mallenexpensify commented on Jun 19, 2026

    @mallenexpensify
    Contributor

    Payment Summary

    Contributor+: @QichenZhu due $250 via NewDot

  13. trjExpensify commented on Jun 25, 2026

    @trjExpensify
    Contributor

    approved $250 for @QichenZhu

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

Metadata

Metadata

Labels

AccessibilityIssues affecting WACG accessibility on any platform.Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2ExternalAdded to denote the issue can be worked on by a contributor

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions