nextcloud / ios

📱 Nextcloud iOS App
https://itunes.apple.com/us/app/nextcloud/id1125420102
GNU General Public License v3.0
1.89k stars 862 forks source link

Nextcloud IOs app accessibility issues #621

Open tyrylu opened 5 years ago

tyrylu commented 5 years ago

This is an issue in the spirit of the Android app accessibility review. All the below facts were discovered in the Nextcloud app version 2.21.3.1 on an Iphone 6 with czech locale settings on IOs 12.4.1. I would gladly do a PR, however i have no Mac Os system at hand and editing the xib and storyboard files is not the most accessible xcode area anyway. :disappointed: For all the below, the steps to reproduce are simple and basically are try using Voiceover with the Nextcloud app.

General

marinofaggiana commented 5 years ago

Hi @tyrylu thanks for you consideration, do you have Test Flight for testing the beta ?

tyrylu commented 5 years ago

I could do the testing, i have the app, so you could likely invite me (same e-mail address as on Github).

marinofaggiana commented 5 years ago

please send me your email to ios @ nextcloud dot com for invite.

tyrylu commented 5 years ago

Alright, from a quick look it seems the report is still valid as is also for the current beta.

jancborchardt commented 5 years ago

@tyrylu awesome! :) I just did a test with VoiceOver and only saw this issue now! Here’s my findings too, I think many are duplicate from yours. There’s also some suggestions how to improve. cc @nextcloud/accessibility

MarcoZehe commented 5 years ago

Thanks for filing this, @tyrylu, and for updating it, @jancborchardt! I recently started using the iOS app and saw most of these issues, too, just hadn't got around to filing them yet. A few pointers:

As soon as the controls vanish, it is not possible to get out of the detail view in VoiceOver mode. You need to close the app and open it again.

This can be solved by implementing the appropriate method for the VoiceOver Z gesture, or VoiceOver Escape. Alternatively, one could make the item modal and tell users that way that the other elements are hidden and this should be dismissed with the scrub gesture.

A great example that shows many techniques that are also relevant here is this year's sample app.

More information can also be found here.

@marinofaggiana, I will also send you my e-mail for a TestFlight invitation. :)

MarcoZehe commented 5 years ago

Unfortunately, ios at nextcloud dot com seems to be an invalid e-mail address, I get a 550 returned on each attempt. @marinofaggiana, has the alias been disabled since you posted this?

henningoschwald commented 5 years ago

Sorry for posting the same again as in #646, I just saw it is closed after posting my comment.

In an earlier version of the Nextcloud IOS app I managed to open the three dot menu in the file list by focussing an item in the list, then double-tapping and holding the element and flick it to the left. I just tested it again and id didn't work any more, rather than opening the context menu for the item, this now triggers deletion of the item. When flicking the item to the right instead, it triggers the favorite/unfavorite action, although without giving any indication. For files I can access context menu items such as "open with" or "share" by double-tapping and holding the element and moving around my finger, but for directories this doesn't work, I just can not find a button.

The common way for accessing such contextual actions is adding them as custom accessibility actions. This solution does not require to permanently display a menu button for every item, instead voiceover announces "actions available" after reading an item with custom actions and the user can cycle through the available actions by swiping up or down. To get an idea about how it works, just open the telephone app, go to the call history and touch an item in the list. Voiceover will read the item, followed by "actions available". By swiping up or down with one finger, you can cycle through the options "activate", "delete" and "more information". A double-tap then triggers the selected action.

MarcoZehe commented 5 years ago

These CustomActions are a good idea whenever there are such entries that have multiple swipe actions to the left or right etc. to perform tasks, or which always have repetitive buttons associated with them. These should then be marked as not being AccessibilityElements, and the actions those buttons perform should be added to the CustomActions rotor as @henningoschwald describes above. Therefore, each entry only gets one VoiceOver focus stop, not 4 or 5. Efficiency is paramount.

the-swissionary commented 5 years ago

Hello! Just wanted to chime in and express my hope that Custom Actions will be implemented as soon as possible. Currently, essential tasks, such as sharing a folder with other NextCloud Users, can‘t be performed while VoiceOver is running. This is because swiping on the folder name, which sighted users must do to activate the corresponding menu, performs a different action for VoiceOver. Please therefore make sure those actions can be performed by defining Custom VO Actions, as explained here: https://developer.apple.com/documentation/uikit/uiaccessibilitycustomaction

I tried both NextCloud versions: The one currently in the App Store as well as the Beta distributed on TestFlight. I also did send an email via the „Beta Feedback“ button, which wasn‘t replied to though.

tyrylu commented 4 years ago

Any progress after a quarter of an year on this would be welcome, but still no change in the latest beta. I'd much like to help with that, but doing the development on a Mac Os vm... Probably not an ideal setup.

jancborchardt commented 4 years ago

@marinofaggiana @nextcloud/ios any update here? It’s very important that our software is accessible for everyone, and should be treated with priority. :)

jancborchardt commented 4 years ago

Also cc @Ivansss in case you can help!

marinofaggiana commented 4 years ago

@jancborchardt I have several task open, but after Berlin September I modify the GUI for iPad, and so I can apply this.

the-swissionary commented 4 years ago

Dear @marinofaggiana, dear Team, Is there any chance this issue could be tackled soon? Has there been any work on it in the last months? I kept trying out those TestFlight Builds, but never could I notice any improvement concerning accessibility.

tyrylu commented 4 years ago

I wanted to bump this one as well, so thanks for doing it. :-) And same questions.

jancborchardt commented 3 years ago

@marinofaggiana @JorisBodin @immortal79 could you look into this? Some of these are very quick wins like adding labels to the "Add or upload" button.

And there’s other structural things which are maybe a bit more work, but very core to the application, like:

Any way how to open a file's detail without downloading it? A voiceover double-tap starts a download sequence and when it has the file locally it shows a share sheet (not when the file is a for example .txt file, in this case it shows the details view)

That is, with VoiceOver, after the file open action, it should focus the share action and then the "More actions" menu.

bdorer commented 4 months ago

Several things of this ticket are already fixed e.g. the VoiceOver rotor actions and localized back buttons. Would it be easier for you to close the ticket and open smaller once to make it better tragable? Or could s.o. check the list for things still to do?

tyrylu commented 4 months ago

Feel free to do one of these.