Skip to content

[Feature branch] Reading challenge widget#6367

Merged
cooltey merged 135 commits intomainfrom
reading-challenge-widget-design
Apr 27, 2026
Merged

[Feature branch] Reading challenge widget#6367
cooltey merged 135 commits intomainfrom
reading-challenge-widget-design

Conversation

@Williamrai
Copy link
Copy Markdown
Collaborator

@Williamrai Williamrai commented Mar 4, 2026

What does this do?

  • adds reading challenge widget
  • this branch also has Developer setting called "Reading Challenge Widget Configurations" for updating widget states easily

Phabricator:
https://phabricator.wikimedia.org/T418634

@Williamrai Williamrai added the WIP Work in progress label Mar 4, 2026
cooltey and others added 22 commits March 4, 2026 16:47
- updates widgets size
- adds unit test for ReadingChallengeWidgetRepository resolveState and recalculateStreakIfNeeded function
- code fixes
- adds colors, gradient background
- adds preview images
- adds resources
* Reading challenge: code updates and renaming

* Code fix

* Code review comment

* Lint

* Use TestCase

---------

Co-authored-by: williamrai <williamrai13@gmail.com>
Williamrai and others added 24 commits April 13, 2026 10:38
- removes unused baby globe assets
- code fixes
# Conflicts:
#	gradle/libs.versions.toml
…g challenge widget (#6519)

* - adds start date for reading challenge dev settings
- infinite loop fix

* - test fix
…terized string in onboarding (#6530)

* - adds parameter string for onboarding subtitle and make start and end date public function

* - introduces an additional compact size variant to better support smaller height constraints.

* - remove TODO

* - aligns the same asset for the small widget
* - adds analytics for Reading Challenge Widget

* - adds instrument to all widget states
- adds "apps-open" instrument

* - instrumentation fixes

* - adds instrumentation for reading challenge widget
- adds helper function to send events easily
- code fixes to work with instrumentation
- reading challenge dev setting performance fix

* - code fixes

* - adds action subtype

* - adds proper instrumentation calls and removes from static object

* - adds default action source

* - remove funnel_name from heartbeat event
- adds widget state name as element_id for heartbeat event

* Tiny cleanup.

---------

Co-authored-by: Dmitry Brant <me@dmitrybrant.com>
- establish single source of truth for small and large widget sizes
- Introduce TINY size
- Fine-tune widget UI element sizes per size tier
- Add preview coverage across tier boundaries to verify edge cases
- Fix GeneralLargeWidget layout to allow flexible mascot sizing
- removes minResizeHeight which is not required as user cannot resize height
* - Fix reading challenge reward dialog not showing from widget when app is in background

* - fix: shows reward dialog in activity tab

* Have login logic in the shouldShowReward

---------

Co-authored-by: Cooltey Feng <cfeng@wikimedia.org>
@cooltey cooltey requested review from cooltey and dbrant April 27, 2026 23:06
@cooltey cooltey merged commit 52102be into main Apr 27, 2026
2 checks passed
@cooltey cooltey deleted the reading-challenge-widget-design branch April 27, 2026 23:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

WIP Work in progress

Development

Successfully merging this pull request may close these issues.

3 participants