openedx / openedx/openedx-platform

Mobile apps unit screens flash from light to dark background

Open
#36,222 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
8.2k
Forks
4.4k
Avg merge
6d 18h
Merged PRs (30d)
42

Description

The issue
This makes users feel extremely uncomfortable using dark mode, thus making the dark mode almost unusable.
I opened the issue here rather than in the app repositories because I think the solution is from the backend.

Reproduce
Set your mobile device theme to dark theme, open openedx mobile app, open a course, and go to unit screens (it's easier to see in units containing text components), you will see the screen flash from white to dark theme background.
You can use edx.org apps to test.

Suggestion:
The dark theme background or class should be set on the server side, the theme mode can be extracted from the request cookie or a variable can be used in the same user' preferred language is handled.
The color code for the background can be set through a config variable with a default value.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue in an Open edX mobile app with the device set to dark mode, opening a course unit containing text components. Trace how the unit screen receives its initial background and theme information, then verify that the screen no longer flashes white before settling on the dark background and that the proposed server-side configuration behavior is covered.

Written by the indexing model from the issue text.

Assessment

Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.