element-hq / element-x-ios

Next generation Matrix client for iOS built with SwiftUI on top of matrix-rust-sdk.
https://element.io/labs/element-x
Apache License 2.0
380 stars 78 forks source link

Improvements for the VoiceOver rotor #2232

Open sempruijs opened 7 months ago

sempruijs commented 7 months ago

Steps to reproduce

I am happy that the current version now implements the VoiceOver rotor on messages. VoiceOver users can now find out how you can reply to a message. @pixlwave thank you!

I have some feedback though. The current way the rotor is implemented does work but it is slower and not the standard way how the rotor should be implemented.

These rotor options are currently available for VoiceOver users:

[ activate (default) message actions ]

you can select the {message actions} option, which opens a menu where you can find the reply button, or the copy button or something else. This is way better then what we first had, but the could be better implemented. VoiceOver users would rather have these rotor options for a message:

[ activate (default) reactions reply copy forward copy link to message report content }

This way, VoiceOver users can directly select their actions instead of first opening the menu and then selecting their action. I hope that I explained it good enough, you can contact me for any questions regarding VoiceOver. My mxid is: @qlp:matrix.org

Outcome

.

Your phone model

iphone 13 pro

Operating system version

17.1.2

Application version

1.4.3 (80)

Homeserver

matrix.org

Will you send logs?

No

pixlwave commented 7 months ago

Hey @sempruijs glad you like it, although thanks should go to @stefanceriu for implementing this one.

We were aware of this limitation, but unfortunately this was the best option at the time as SwiftUI needs to know which actions to add to VoiceOver before they're displayed rather than when they're interacted with. This adds a lot of overhead when rendering the timeline so we settled with making sure the actions were at least available to begin with.

sempruijs commented 7 months ago

Ahh alright, hope it will be implemented in the future. Thank you @stefanceriu for the improvement❤️