apache / apache/cordova-plugin-inappbrowser

accessibility issues, cordova-plugin-inappbrowser

Open
#550 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
1.1k
Forks
2.2k
PR merge metrics
No merged PRs in 30d

Description

# Bug Report

## Problem

### What is expected to happen?
* Buttons must have meaningful names that can be read with screen readers (e.g., "Back", "Forward" and "Close")
* Text in buttons and address field must meet WCAG contrast requirements for text (4.5:1)
* Address field must include a meaningful label/name value (e.g., "Address")
* When a button is disabled, state must be conveyed to assistive technology (dimmed or disabled)
* Text in the UI (e.g., the "Close" button visible in iOS, the Address field value) should respond to device text size settings (e.g., Larger Text in iOS)
* [Best Practice] Buttons will meet non-text contrast requirements (3:1)

### What does actually happen?
* Button labels are announced inconsistently or labels are not meaningful (e.g., Back button is announced as "Back button button" in Android/TalkBack and "black left pointing pointer" in iOS/VoiceOver)
* Disabled button state is not announced in Android/TalkBack
* Text color in iOS for Close button does not meet contrast requirements (3.1:1)
* Text/background contrast for Address fields does not meet contrast requirements in either Android or iOS
* Text in the UI does not respond to user-defined text size settings
* Buttons do not meet non-text contrast requirements in iOS

## Information

Issue is specific to Web Content Accessibility Guidelines (WCAG) compliance in the plugin UI.

### Command or Code

### Environment, Platform, Device

iPhone 8/iOS 12.4.1, Google Pixel 2/Android 9

### Version information

Cordova CLI : 8.1.2 (cordova-lib@8.1.1)
Cordova Platforms : android 8.0.0, ios 4.5.5
Cordova Plugins:

cordova-plugin-device 2.0.3 "Device"
cordova-plugin-inappbrowser 1.7.2 "InAppBrowser"
cordova-plugin-ionic-keyboard 2.2.0 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 4.1.1 "cordova-plugin-ionic-webview"
cordova-plugin-splashscreen 5.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.3 "StatusBar"
cordova-plugin-whitelist 1.3.4 "Whitelist"
cordova.plugins.diagnostic 4.0.12 "Diagnostic"
Other Frameworks:

Ionic CLI : 5.2.2
Ionic Framework : @ionic/angular 4.5.0
System:

Android SDK Tools : 26.1.1
ios-deploy : 1.9.4
ios-sim : 6.1.2
NodeJS : v10.15.0
npm : 6.11.2
OS : macOS Mojave
Xcode : Xcode 11.1 Build version 11A1027

## Checklist

- [X ] I searched for existing GitHub issues
- [X ] I updated all Cordova tooling to most recent version
- [X ] I included all the necessary information above

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the InAppBrowser UI on the listed Android and iOS devices, focusing on the Back, Forward, and Close buttons and the Address field. Compare screen-reader announcements, disabled-state feedback, WCAG contrast ratios, and device text-size behavior with the requirements in the issue. Done means the reported Android and iOS accessibility problems are addressed and verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, ios, java, objective-c
Domain
accessibility, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.