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

remove color inversion #14894

Merged
merged 1 commit into from
Dec 9, 2023
Merged

remove color inversion #14894

merged 1 commit into from
Dec 9, 2023

Conversation

RobozinhoD
Copy link
Contributor

Purpose / Description

Night mode wasn't consistent

Fixes

Approach

Remove night color inversion

How Has This Been Tested?

opened cards in night mode and the colors weren't inverted

image

image

image

Checklist

Please, go through these checks before submitting the PR.

  • You have a descriptive commit message with a short title (first line, max 50 chars).
  • You have commented your code, particularly in hard-to-understand areas
  • You have performed a self-review of your own code
  • UI changes: include screenshots of all affected screens (in particular showing any new or changed strings)
  • UI Changes: You have tested your change using the Google Accessibility Scanner

@mikehardy
Copy link
Member

If we do this, it will need a big callout in the release notes and a documentation update that inverts the explanations on how to remove the night mode colorization with an explanation on how to re-do it with CSS (for people that do not want change)

https://github.com/ankidroid/Anki-Android/wiki/FAQ#advanced-formatting-tips
https://github.com/ankidroid/Anki-Android/wiki/Advanced-formatting#customize-night-mode-colors

Basically, this feature is relatively polarizing as an idea (most don't care, some hate it, some probably like it) and everyone seems to have in general learned to live with it. Changing it requires some care for that reason as it is likely to be disruptive for a lot of people

@david-allison
Copy link
Member

david-allison commented Dec 7, 2023

Below are my general thoughts. I'd accept a PR which added a preference, defaulting to true for existing users, and false for new users

A follow up would be to mark "true" as deprecated


I don't like the feature (this breaks the canonical deck for a language I'm working with)

We should aim to be compatible with Anki desktop, but we should do this slowly to avoid frustrating users

I believe the steps would be something similar to:

  • Add a preference and default it to "off" for new users
  • Define a "deprecated" preference warning which appears as a warning badge on the relevant preferences + the preference icon, which links to documentation
  • Block new translations of the strings
  • Define a "deprecated" preference error: if the preference is still enabled, inform the user that it has no effect and link to the documentation
    • We may want a user to be able to see how the preference changes the card whilst disabling functionality, realistically the best option would be to say "download the last version"
  • If disabled, remove the preference + key from the collection
  • If enabled, keep the preference until n+1 and the preference was disabled
  • If never disabled, wait a few versions then remove the preference
    • Maybe have a "breaking changes" doc

@BrayanDSO
Copy link
Member

The layers of filter for frustrated people would be the people that:

  • Are a previous user
  • Use night mode
  • Don't use the desktop version and this way won't discover the incosistence
  • Don't know CSS
  • Have downloaded a custom deck (since they don't know CSS to add a custom color themselves)
    • which doesn't have .night_mode/.nightMode
    • which has custom colors
      • that display well when inverted and don't when not

So I don't think that the number of affected people will be big and actually expect more people being frustrated because the color is inverted than because it is not inverted. Therefore, I prefer being disruptive and doing it at once (but I won't quote Zuckerberg motto here).

The cautious approach is fine too, but it's up to the people that want to carry it given the limited human resources we have and the amount of stuff that is more important than this

@mikehardy
Copy link
Member

I think disrupt and "fix" with altered documentation / changelog mention is okay
the alternative is a whole lot of work for likely little return yes

@david-allison
Copy link
Member

Disagree & commit: let's do this!

I'm going to be working on deprecation in preferences for ReadText, if this gets in any time soon, we have the option, but I suspect it won't be necessary

Copy link
Member

@BrayanDSO BrayanDSO left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@BrayanDSO BrayanDSO added Needs Second Approval Has one approval, one more approval to merge and removed Needs Review labels Dec 8, 2023
Copy link
Member

@david-allison david-allison left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also LGTM, pending CI

@lukstbit lukstbit added this pull request to the merge queue Dec 9, 2023
Merged via the queue into ankidroid:main with commit dc45c0d Dec 9, 2023
7 checks passed
@github-actions github-actions bot added this to the 2.17 release milestone Dec 9, 2023
@github-actions github-actions bot removed the Needs Second Approval Has one approval, one more approval to merge label Dec 9, 2023
@RobozinhoD RobozinhoD deleted the invert branch December 10, 2023 18:29
Copy link
Contributor

Hi there @RobozinhoD! This is the OpenCollective Notice for PRs merged from 2023-12-01 through 2023-12-31

If you are interested in compensation for this work, the process with details is here:

https://github.com/ankidroid/Anki-Android/wiki/OpenCollective-Payment-Process#how-to-get-paid

We only post one comment per person per month to avoid spamming you, regardless of the number of PRs merged, but this note applies to all PRs merged for this month

Please understand that our monthly budget is never guaranteed to cover all claims - the cap on payments-per-person may be lower, but we try to make our process as fair and transparent as possible, we just need your understanding.

Thanks!

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

Successfully merging this pull request may close these issues.

[Feature request] Make the default night mode text color consistent with that of Desktop version
5 participants