Skip to content

benny-jon/ComposeAccessibilityBugs

Repository files navigation

ComposeAccessibilityBugs & Workarounds

Playground to create examples of Accessibility bugs and implementing some workarounds

Compose version used: 1.4.2

Sample project for the Google Issues:

Composables under Test

  • HorizontalPager used here is the one from: androidx.compose.foundation.pager.HorizontalPager
  • ModalBottomSheetLayout

Code

For the full list of examples look at the file ListOfExamples.kt

Highlighted Examples

EXAMPLE 3 - HorizontalPager

Complex Scenario: Built on top of Google Example HorizontalPagerWithScrollableContent with variable Page heights.

Box {
    Colum { 
      Text() // Banner
      TabRow() 
    }
    HorizontalPager {
        Colum (scrollable) { ... }
    }
}

Issues

  • Not usable in Landscape mode
  • Talkback navigation doesn't scroll the Banner and Tabs out of the screen through the nestedScrollConnnection. Will be a problem for Landscape.
  • Talkback navigation focus is trapped inside the Pages until the user reaches the First or Last page.
  • Keyboard navigation doesn't finish the Pager transition from one to another one.
  • Keyboard + Talkback navigation is very unstable, when using the Tab key focus separates at end of the first visible elements before scrolling
Touch Talkback
example3_touch_behavior.mp4
example3_talkback_navigation.mp4
Keyboard Talkback + Keyboard
example3_keyboard_navigation.mp4
example3_keyboardtalkback_navigation.mp4

Talkback in Landscape

example3_talkback_navigation-landscape.mp4

EXAMPLE 5 - ModalBottomSheetLayout

Issue:

Focus is not restored after closing the Bottom Sheet. It should go back to the button 'Open Bottom Sheet'

example5.mp4

About

Playground to create examples of Accessibility bugs

Resources

Stars

Watchers

Forks

Languages