Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable all animations toggle [Accessibility][UX][Feature Request] #666

Closed
alltheseas opened this issue Feb 21, 2023 · 12 comments
Closed

Disable all animations toggle [Accessibility][UX][Feature Request] #666

alltheseas opened this issue Feb 21, 2023 · 12 comments

Comments

@alltheseas
Copy link
Collaborator

alltheseas commented Feb 21, 2023

User Story

As a Damus user who has an accessibility negative user experience with experiencing animations, I would like a setting that allows me to disable all animations, so that I can improve my Damus user experience.

Acceptance Criteria

  1. Damus user has option to disable (and enable) all animations in the Settings Menu

Mockup:
Disable Animations

Origin
"Just sent a ⚡️Tip of 1,000,00 Sats to #[0] for raising a topic to #NostrDevs that will allow his friend who lives with epilepsy to join Nostr. Topic raised on 02/19: Client Accessibility. #NostrDevs: Can a stop all animation feature be created and added to Client Settings features?"

image

-Gabe & Angela

@alltheseas alltheseas changed the title Stop all animations toggle [Accessibility][UX][Feature Request] Disable all animations toggle [Accessibility][UX][Feature Request] Feb 21, 2023
@tyiu
Copy link
Collaborator

tyiu commented Feb 21, 2023

Good idea. Should be easy to implement.

@joelklabo
Copy link
Contributor

Anyone working on this one? I guess that would mean not animating GIFs as well?

@tyiu
Copy link
Collaborator

tyiu commented Feb 22, 2023

Anyone working on this one? I guess that would mean not animating GIFs as well?

I believe so.

@alltheseas
Copy link
Collaborator Author

I guess that would mean not animating GIFs as well?

Yes 🙏

@OlegAba
Copy link
Contributor

OlegAba commented Feb 22, 2023

Hi all, I have a PR up proposing to switch image libraries. I will implement this with whichever library is decided on.

@bryanmontz
Copy link
Contributor

Instead of having a separate setting inside Damus for disabling animations, it should simply respect the user's UIAccessibility. isReduceMotionEnabled value.

@alltheseas
Copy link
Collaborator Author

Instead of having a separate setting inside Damus for disabling animations, it should simply respect the user's UIAccessibility. isReduceMotionEnabled value.

Great suggestion. I am checking now with the user who requested this feature.

@alltheseas
Copy link
Collaborator Author

@bryanmontz

There are two choices for where disabling motion setting can take place for Damus/iOS:

  1. in app Damus setting
  2. iOS has a reduce motion settings in accessibility/motion menu. Damus can read the iOS setting and respect this choice.
    Which do you suggest is the better option, and why?

Accessibility User Feedback:

#1. Why: it shows the client thought to include the setting option. Similar to language translation options; the consideration is there as an option of inclusion/user reach.

https://damus.io/note1z6r36tyj4kr5hhhg0k0s2rjtxajqa7j9txv2lmnjaaq4y7aphsnqdz6umh

@bryanmontz
Copy link
Contributor

@alltheseas
Thanks for checking and continuing the conversation!

To each their own, but here's why I respectfully disagree:

  1. A user with the Reduce Motion setting turned on has already declared that they don't want to see unnecessary motion, so there's no further decision that they should need to make by flipping another switch in each app. Apple's way for their platforms is that things should "just work", meaning the user should have to fiddle with things the least they possibly could and still get their desired result.
  2. The developer of any given app respecting that setting by default shows as much care about accessibility settings as does having another switch in the app.

I suppose that as long as the in-app setting's default value is to read the accessibility value, and then give the user the option to override that, it would be fine. I just wouldn't want the app to default to showing animations when the accessibility setting was to not show it.

@alltheseas
Copy link
Collaborator Author

alltheseas commented Feb 24, 2023

@bryanmontz I hear you, and I believe I understand where the accessibility user feedback is coming from. How does this sound:

User Story

As a Damus user who has an accessibility negative user experience with experiencing animations, I would like a visible in-app Damus setting that allows me to disable all animations, so that I feel included and can improve my Damus user experience.

Acceptance Criteria

  1. Damus user has option to disable (and enable) all animations in the Settings Menu,
  2. As a default setting, Damus checks and imports user's iOS UIAccessibility. isReduceMotionEnabled value (one time check. For instance, if user has iOS reduce motion enabled, and installs Damus, Damus has animations disabled by default),
  3. If user changes setting in Damus, this overrides iOS.

@bryanmontz
Copy link
Contributor

Seems fine to me, but I'm not in charge. Just giving my opinion. Thanks again.

@alltheseas
Copy link
Collaborator Author

"I spoke to my friend this afternoon who couldn't join due to this issue. she said that while the ios setting works, it would be more assuring to have an in app setting to show it's being considered and to offer a feeling of safety. If possible it could just be presented as an option in the client that is automatically enabled according to the ios setting."

https://damus.io/note1dwkgcudjg3jtn5004dnljxjchz02nj0cvtlgq9v2m0t9qupmz8wquytktk

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants