Skip to content

bug: ios, voiceover does not move to correct location after page transition #23650

Closed
YoutacRandS-VA/eth2-beaconchain-explorer-app
#2
@Waligustav

Description

@Waligustav

Prequisites

Ionic Framework Version

  • v4.x
  • v5.x
  • v6.x

Current Behavior

Hi!

I stumbled upon a bug while implementing some accessibility functionality in an application

When navigating from page A to page B with voice-over within my application, the following issue appears. Upon entry to page B, the voice over-gets stuck on page A. Voice-over does not detect the correct contents inside page B. It looks like the voice-over keeps focusing on the recently clicked element from the previous page (A).

I have recorded functionality behaviour in the video linked below.

VoiceOverBugRecording.mov

Expected Behavior

When redirecting from "test page1" (A) to "test page2" (B) voice-over should immediately detect the first contents within the pages body so that the voice-over starts reading from the top of the page.

Steps to Reproduce

Project initiation

  • Download the repo
  • Open your CLI and navigate to the project folder
  • Type "npm install" and "ionic serve"

(macOS)

  • Go to system preferences > accessibility > shortcut > make sure every box is checked
  • Open the browser window that contains the project server > right click > inspect > toggle device toolbar "iphone X"
  • Press CMD while quickly pressing the "touch id" button 3 times
  • Refresh the browser window that contains the project server

Voice-over navigation

  • CAPS-lock + shift + down-arrow to enter the current area
  • CAPS-lock + shift + up-arrow to exit the current area
  • CAPS-lock + shift + right-arrow to skip the current area
  • CAPS-lock + space to "click" on a clickable link/button/item

Code Reproduction URL

https://github.com/Waligustav/ionicbugtest

Ionic Info

[WARN] Error loading @capacitor/ios package.json: Error: Cannot find module
'@capacitor/ios/package'

   Require stack:
   -
   /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/lib/project/index.js
   -
   /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/lib/index.js
   - /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/index.js
   - /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/bin/ionic

[WARN] Error loading @capacitor/android package.json: Error: Cannot find module
'@capacitor/android/package'

   Require stack:
   -
   /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/lib/project/index.js
   -
   /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/lib/index.js
   - /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/index.js
   - /Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli/bin/ionic

Ionic:

Ionic CLI : 6.16.3 (/Users/walibjork/.nvm/versions/node/v14.7.0/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/vue 5.6.11

Capacitor:

Capacitor CLI : 3.1.1
@capacitor/android : not installed
@capacitor/core : 3.1.1
@capacitor/ios : not installed

Utility:

cordova-res : not installed globally
native-run : 1.4.0

System:

NodeJS : v14.7.0 (/Users/walibjork/.nvm/versions/node/v14.7.0/bin/node)
npm : 6.14.7
OS : macOS Catalina

Additional Information

I upgraded a copy of the project to the Ionic 6 beta and tested the same functionality without any positive results.

I also tried this on a physical Iphone and voice-over seems to behave similarly.
Let me know if you want me to post more information about testing this issue on a physical device and i will provide you with more information.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions