ios-app icon indicating copy to clipboard operation
ios-app copied to clipboard

[fix/a11y] Fix accessibility issues

Open felix-schwarz opened this issue 1 year ago • 8 comments

Description

Fixes #1329, #1330, #1333, #1336, #1340.

Work-in-progress:

  • #1337
  • #1338
  • #1341

Related Issue

#1329 : Approved #1330 : Issues to review #1333 : Approved #1336: Pending review #1340 : Approved

Screenshots (if appropriate):

Types of changes

  • [x] Bug fix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to change)

felix-schwarz avatar Apr 23 '24 09:04 felix-schwarz

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

CLAassistant avatar Apr 23 '24 09:04 CLAassistant

https://github.com/owncloud/ios-app/issues/1329

Personal space

  • [x] The "Menu" button has an alternative text, but this is in English and appears to be the name of a variable. in English and appears to be the name of a variable.
  • [x] The "Plus" button ("+") has an alternative text, but it is in English - "Add item". in English - "Add item". As this version of the app is a German version a German version, the alternative text should be in German.
  • [x] Note: The list of directories and files contains a "More" button in each list item contains a "More" button. To support screen reader users users, it would be advisable to display not only the word "More", but also the name of the name of the directory or file.

Menu, Shared with me, Spaces

  • [x] The "Menu" button does have an alternative text, but this is in English and appears to be the name of a variable.

Shared with others

  • [x] The "Menu" button does have an alternative text, but this is in English in English and appears to be the name of a variable.
  • [x] The button with the arrow pointing to the right does have an alternative text alternative text, but it is in English and not in German.

Image Viewer

  • [x] The "Menu" button has an alternative text, but this is in English and appears to be the name of a variable. in English and appears to be the name of a variable.
  • [x] The alternative text of the "Actions" button contains both the word "Actions" as well as the file name, which makes it difficult to understand. leads to poor comprehensibility. It is recommended to remove the file name from the alternative text. from the alternative text.

NOTE: Translations to german is not an app feature, i assume that existing translations are OK for German language

jesmrec avatar May 06 '24 10:05 jesmrec

https://github.com/owncloud/ios-app/issues/1330

Personal Space and Shared with me

  • [x] Each directory or file in the list has "status" icons that show users whether the file has already been users whether the file has already been shared, for example. Unfortunately these icons are not displayed by screen readers, so this information is not accessible to not accessible to screen reader users. -> every of this images is spelt together with "Actions available" during dictation. But, those icons are only indicators about the file status and no action is available by clicking on them or any other gesture. is that right @felix-schwarz ?

Image Viewer

  • [x] When focusing on the image with the screen reader, the description of the image is not displayed. image, but information such as size and date entries. -> i don't understand what's going on here. What does "description of the image" mean? afaik, we don't describe images, not sure how to check this one

jesmrec avatar May 06 '24 10:05 jesmrec

https://github.com/owncloud/ios-app/issues/1333

Menu

  • [x] The status of the user is only shown by colored dots. There is no other option is offered to recognize the status, for example through a text alternative.
    • [X] Online (green)
    • [X] Connecting (yellow)
    • [X] Authentication error/Offline (red)

jesmrec avatar May 07 '24 07:05 jesmrec

https://github.com/owncloud/ios-app/issues/1340

Shared with me

  • [X] The visual labels of the "Accept" and "Reject" buttons are not included in the accessible accessible name, as the accessible name is displayed in English. is output in English.

NOTE: Translations to german is not an app feature, i assume that existing translations are OK for German language

jesmrec avatar May 07 '24 07:05 jesmrec

Personal Space and Shared with me

  • Each directory or file in the list has "status" icons that show users whether the file has already been users whether the file has already been shared, for example. Unfortunately these icons are not displayed by screen readers, so this information is not accessible to not accessible to screen reader users. -> every of this images is spelt together with "Actions available" during dictation. But, those icons are only indicators about the file status and no action is available by clicking on them or any other gesture. is that right @felix-schwarz ?

@jesmrec As far as I can see, the actions are inherited from the parent views / accessibility elements and can't be removed by the children:

Bildschirmfoto 2024-05-13 um 22 42 01

Triggering these actions triggers the respective actions of the parent views.

When I let Accessibility Inspector mimic VoiceOver by reading the description, it only read "Shared by link, image". What needs to be done to get VoiceOver to also say "Actions available"?

Image Viewer

  • When focusing on the image with the screen reader, the description of the image is not displayed. image, but information such as size and date entries. -> i don't understand what's going on here. What does "description of the image" mean? afaik, we don't describe images, not sure how to check this one

The file viewer shows general file information while loading the file (or for files that don't exist locally and can't be downloaded for f.ex. lack of connection). Once the file is loaded, that information is covered by the viewed file.

Previously, that file information was still read out loud because it was still part of the view hierarchy. Now, after the fix, it is no longer read out.

felix-schwarz avatar May 13 '24 20:05 felix-schwarz

When I let Accessibility Inspector mimic VoiceOver by reading the description, it only read "Shared by link, image". What needs to be done to get VoiceOver to also say "Actions available"?

Just clicking on the items, Voice Over spells:

  • "Available offline image. Actions available"
  • "Shared image. Actions available"
  • "Shared by link image. Actions available"

Mi device is a iPhone XR iOS17.4.1

The file viewer shows general file information while loading the file (or for files that don't exist locally and can't be downloaded for f.ex. lack of connection). Once the file is loaded, that information is covered by the viewed file. Previously, that file information was still read out loud because it was still part of the view hierarchy. Now, after the fix, it is no longer read out.

Thanks for clarifying!

jesmrec avatar May 14 '24 11:05 jesmrec

Rebased against #1356.

felix-schwarz avatar May 17 '24 10:05 felix-schwarz

@jesmrec The item cells now provide a consolidated description for VoiceOver, fixing that issue. I also addressed all issues in #1336, #1337, #1338 and #1341, which are now ready to be checked.

felix-schwarz avatar May 23 '24 13:05 felix-schwarz

https://github.com/owncloud/ios-app/issues/1341

Personal Space

  • [X] When the elements on the page are sorted, the status of the sorting is sorting is only shown visually by arrows. However, this visual representation a limitation for non-visual users, however, as they do not receive any information about the current sorting.
  • [X] Both directory and file names are buttons and can be activated. be activated. Unfortunately, these elements lack a corresponding role to their function as buttons appropriately.
  • [X] Although the "Start multiple selection" button has an accessible name name, but this always remains the same, regardless of whether the multiple multiple selection has been activated or not. It would be advisable either change the accessible name or display the status of the multiple multiple selection status.
  • [X] In multiple selection mode, further buttons appear at the bottom of the page. buttons appear at the bottom of the page. Unfortunately, these buttons have no role and there is no hint explaining their function.
  • [X] Both date and time information are displayed unformatted and unformatted and incomprehensible. Further details can be found at https://a11y-guidelines.orange.com/en/mobile/ios/development/#date-timeand-numbers.

Menu

  • [X] The account URL appears to be a button, but it has not been implemented as such with a corresponding role.
  • [X] The "Personal" button has no role.
  • [X] All submenus, such as "Shared with me", have no role.
  • [X] The "Spaces" button does not have a role and informs users that it is a it is a collapsible element, but this is not the case.

Share with me

  • [X] Both date and time information are output unformatted and incomprehensible - see comment on page 2.
  • [X] Buttons that are located in the "Accepted" area, such as directory names have no role.

Spaces

  • [X] The Space buttons do not have an assigned role and the hint is also missing.

jesmrec avatar May 28 '24 10:05 jesmrec

https://github.com/owncloud/ios-app/issues/1337

Personal Space

  • [x] In the test, it was possible to focus non-interactive elements with the keyboard, which should be avoided.

Shared with me

  • [x] In the test, it was possible to focus the heading "Shared with me" with the keyboard, which should be avoided. which should be avoided.

Shared with others

  • [x] In the test, it was possible to focus the heading "Shared with others" with the keyboard, which should be avoided. which should be avoided.

Spaces

  • [x] In the test, it was possible to focus on the "Spaces" heading using the keyboard, which should be avoided.

Add Account

  • [x] In the test, it was possible to focus the "Add account" heading with the keyboard, which should be avoided. which should be avoided.

Image Viewer

  • [x] In the test, it was possible to focus the heading with the file name using the keyboard. which should be avoided.

jesmrec avatar May 29 '24 11:05 jesmrec

https://github.com/owncloud/ios-app/issues/1338

Personal Space

  • [x] For all buttons where the keyboard focus has been implemented by changing the background background color, the keyboard focus is difficult to see. The contrast between the focused and unfocused state is significantly below the recommended the recommended contrast ratio of 3:1.

Menu, Shared with me, Shared with others

  • [x] See commentary on Personal Space.

Spaces

  • [x] The space buttons have a barely visible keyboard focus.

jesmrec avatar May 29 '24 11:05 jesmrec

https://github.com/owncloud/ios-app/issues/1336

Personal Space

  • [x] In the test, it was not possible to focus the sort button with the keyboard. focus with the keyboard.

  • [x] It is not possible to focus the "More" buttons using the keyboard.

Menu

  • [x] The "Eject" button cannot be focused using the keyboard.

Shared with me

  • [x] It is not possible to use the keyboard to focus the "More" buttons.

  • [x] It is not possible to use the keyboard to focus the "Accept" and "Reject" buttons. "Reject" buttons with the keyboard.

Shared with others

  • [x] The buttons with the arrow pointing to the right cannot be focused and activated using the keyboard. and activated with the keyboard. Instead, the entire list element is focused, but it cannot be activated.

Image Viewer

  • [x] It is not possible to change the elements of the carousel using the keyboard. using the keyboard. It is only possible using swipe gestures.

jesmrec avatar May 29 '24 11:05 jesmrec

About #1336, keyboard support. Some findings to comment:

(1)

The Drag Item option in the Tab + Z menu is available in many places, it makes sense only in list of files, right?. Places like the list of accepted shares in Shared with me, Shared by link or also in the options of the Sharing menu. In all of those places, it does not have an action. Check the following videos as example:

https://github.com/owncloud/ios-app/assets/14894746/ed187192-1ef5-47ea-ac2d-300734b60da5 https://github.com/owncloud/ios-app/assets/14894746/c0c1cd5f-ba6f-4d17-bac6-2e4707dad879

(2)

In the first video above, it's also visible a glitch in the Tab + Z menu

  1. In Share with me , select Decline
  2. When the item is declined, then select Accepted
  3. When is accepted again, open the Tab + Z menu

Current: Both Accept and Decline available Expected: Only Decline available

(3)

Not sure if this one is in the scope, because the Sharing options were not included in the accessibility reports:

It's not posible to generate a password for a link, or setting an expiration date. Options not reachable with the keyboard.

(4)

Breadcrumbs in the bottom side of the file list are not browsable. The breadcrumb is reachable but the items inside the path.

Is it intended? feasible to fix?

iPhone XR iOS 17.5 f4ddd54e3

jesmrec avatar May 29 '24 11:05 jesmrec

@jesmrec Thanks for the detailed feedback and the videos! Regarding your findings:

(1) is fixed. (2) I can't reproduce this, but it's what would happen if an item is in OC10 state "pending". Did you encounter this issue with ocis or OC10? (3) is also fixed:

  • setting the expiration date can now be done simply by selection (space bar) of the element and via custom actions. Custom actions also include extending and shortening the expiration date by one week.
  • likewise, all password actions are also available as custom actions - and the user can jump to the password editor by selection (space bar).
  • these options only appear once you've selected a role (via spacebar) (4) breadcrumbs should be keyboard-selectable IF they can actually be "pressed", f.ex. if you're in "Personal > Pictures", only "Personal" can be selected, and "Pictures" can't because you're already in that folder.

I've also brought the availability of actions on par with the Files.app, making the actions that were previously only available under Actions directly available as custom actions: Simulator Screenshot - iPad Pro 13-inch (M4) - 2024-05-31 at 17 41 44

felix-schwarz avatar May 31 '24 15:05 felix-schwarz

  • In Share by Link menu from sidebar, now Copy is missing, not reachable. Should be added tp the actions?

IMG_2390

  • Drag item was removed from many places, but i found it in list of spaces, in every focused space after Tab + Z

In oCIS, it may not be the only way to reproduce, if you try to decline - accept in some way, i t always appears. I have been able to reproduce just listing an item that was just shared (in this case, a duplicated declined option):

https://github.com/owncloud/ios-app/assets/14894746/f26aa7b0-a040-4d8e-8249-a36e357cbcbc

  • Solution to password and expiration date is cool 💯
  • Breadcrumbs are also OK ✅
  • Files App OK ✅

jesmrec avatar Jun 03 '24 11:06 jesmrec

@jesmrec The remaining issues should all be fixed now as of 6677219a34a8522ae95e3221eb940f9e72ff00ce. Please have another look.

felix-schwarz avatar Jun 06 '24 20:06 felix-schwarz

@felix-schwarz all the findings above are fixed

Unfortunately, i found more unexpected appearances of Drag Item:

  • In items inside the Locations section of Available Offline shortcut in sidebar
  • In Search section of sidebar, every item in Quick Access

These two should be the latest ones before finishing 😅

jesmrec avatar Jun 07 '24 11:06 jesmrec

@jesmrec

@felix-schwarz all the findings above are fixed

🥳

Unfortunately, i found more unexpected appearances of Drag Item:

  • In items inside the Locations section of Available Offline shortcut in sidebar

Unfortunately, Apple does not currently provide API support for disabling dragging - from an Accessiblity perspective - for individual items or sections, just for the entire collection view / table view.

For actual touch interactions, there is an API, but it is not consulted by iOS when putting the list of actions together for Tab + Z.

It's therefore not possible to remove the Drag item action from the Locations part without also removing it from the Downloaded files part, which I'd consider a bigger loss than what is won removing that action from the Locations part.

  • In Search section of sidebar, every item in Quick Access

Fixed with the latest commit.

felix-schwarz avatar Jun 10 '24 08:06 felix-schwarz

Fixed the latest commit, and approved on my side

jesmrec avatar Jun 10 '24 10:06 jesmrec