Skip to content

Right to Left testing for Year In Review Compose screens - T392741 #5516

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

Closed
wants to merge 66 commits into from

Conversation

voyagerfan
Copy link
Contributor

What does this do?

This implements RTL testing for Year in Review screens

Why is this needed?

To ensure that RTL languages render properly when the language settings are changed.

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

voyagerfan and others added 30 commits March 3, 2025 13:24
Merge latest changes from main into yearInReview_design
* update dependencies, manifest. Add yearinreview package with navigation and test screen

* fix linting errors

* fix remaining linting error

* removed 'exported' attribute and added BaseTheme to the NavHost testscreen
… (#5385)

* Created ClickListner for 'Year in Review' selection and linked to YearInReviewActivity

* modified newIntent and yearInReviewClick() to remove the userName as a parameter
* main:
  Reduce ANRs: make all HistoryEntry DAO functions suspend. (#5419)
  Bump the kotlin-ksp group with 6 updates (#5416)
  Fix: license links do not match the libraries
* WIP: current changes, removed unecessary file changes

* add string resources and modify colors

* added wikithemes modified scrolling behavior

* remove unecessary implementations for Gifs

* add strings to values-qq folder, added Wikitheme typography

* adding libs folder

* correcting linting errors

* fixing additional linting errors

* added base theme for preview rendering

* fix linting errors

* added screen date, gifs, strings and navigation for scaffold and navhost

* Delete app/src/main/java/org/wikipedia/yearinreview/testCode2.kt

This file is not needed for the repo and is being removed.

* fixing linting errors

* fixing remaining linting errors

* correcting last linting error

* replace icons, adjust composable tint & color, add gradle files

* update icons, adjust composable themes, add gradle files

* added navigation, re-organized YearInReviewActivity for readability

* fix linting errors

* removed unused depenency references in version catalog

* changed gifResource to imageResource per feedback

* separated the getstarted string name reference string an underscore

* added underscore to string names with readcount and editcount

* added format specifier %d to string resources & temporarly hardcoded scaffold with a value

* replace TODO with Unit & GetStared Enum with Onboarding

* changed YearInReviewScreenScaffold to YearInReviewScreen

* removed fetchedData property from YearInReviewScreenData

* moved scrollState to YearInReviewScreen function

* moved pagerState from activity to YearInReviewScreen composable

* clean up linting errors, rename GetStartedBottomBar to OnboardingBottomBar

* refactored use scrollstate only in the YearInReviewScreenContent composable

* correct linting errors

* added %d references for qq-strings

* remove redundant string names in values-qq
Follow up: Year-in-review code format optimization
)

* added dot pagination with contraint layout, changed TODO's, added pages to test size gradient

* fix linting errors

* populated NavHost properties to remove default nav transitions

* refactor paginationSizeGradient, modified BottomAppBar for top border only

* added comment for test screens, updated parameter naming

* added animation for smoothness, update variable naming for clarity

* removed drawline and added HorizontalDivider
Follow-up: YiR pagination and code formats update
…path - T390121 (#5465)

* added explore screen, added navigation to YearInReviewActivity

* add strings, route back to explore screen from onboarding screen

* added button text string resource, minor formatting changes

* address context in ImageView with 'it' and 'this'

* remove padding constants and xml binding

* Removed 'Scaffold' from 'YearInReviewBottomSheetScaffold'

* added scrollstate YearInReviewBottomSheet to handle screen rotation

* Moved ExclusiveBottomSheetPresenter for the Explore Screen to MainFragment

* correct linting

---------

Co-authored-by: cooltey <coolteygame@gmail.com>
Follow-up: YiR entry dialog code optimization
voyagerfan and others added 15 commits May 6, 2025 15:29
* added dot pagination with contraint layout, changed TODO's, added pages to test size gradient

* fix linting errors

* populated NavHost properties to remove default nav transitions

* refactor paginationSizeGradient, modified BottomAppBar for top border only

* added comment for test screens, updated parameter naming

* added animation for smoothness, update variable naming for clarity

* removed drawline and added HorizontalDivider

* added api & db calls, viewmodel, updated strings

* remove accidentally duplicated qq-strings after merge

* add gif assets for collective slides

* add non-english collective slide text

* added nonEnglish collective data and fetchedargs property

* optimize DB query, implment Resource class with screen List

* remove commented code in test screen and unused data class

* add qq-strings for non-english collective screens

* add application context to viewmodel and reorganized string formatting

* removed unecessary parameters from getUserContribsByTimeFrame API call

* renamed query, adjusted query for displayTitles

* remove factory class, rework viewmodel instatiation, add WikipediaApp instance

* simplified getDisplayTitles query, moved span tag extraction to viewModel

* created LoadingIndicator composable and added to YearInReviewActivity

* Adapt API calls for LocalDateTime

* clean up linting errors

* refactored to convert start & end times to be of type Instant

* Add WikiErrorView

* removed unused error branch in YearInReviewActivity

* fixing linting error
Follow-up: viewModel for YearInReview
* integrate DonateDialog class into YiR donate button

* removed casting and replaced with instance reference of the class

* refactored to not pass class instance for Donate functionality

* re-organized MainBottomBar parameters
@voyagerfan voyagerfan added WIP Work in progress Experimental Experiments and prototypes HOLD Will review as soon as other more pressing PRs are merged/released. labels May 20, 2025
voyagerfan and others added 10 commits May 20, 2025 15:38
* add breadcrumb and donation tracking

* add imports for breadcrumb and donation

* add placeholder for campaignId

* removed duplicate clickable

* added ripple animation to clickable donate row

* changed campainId to 'yir'

* Add function invocation for onDonateClick

* moved instrumentation calls to lambda in YearInReviewActivity
…5048 (#5588)

* replaced instances of AndroidView with AsyncImage Composable

* removed context unused context variable

* add strings for AsyncImage content description

* add positions for strings with multiple format specifiers

* removed unecessary backslashes

* replaced %s values with percent %d where appropriate

* add plurals and modidfy viewModel to use plurals

* added minimum edit count conditional for personalized screen to mimic ios version
…394815 (#5579)

* remove info icon from onboarding screen, adding MediaWiki links

* add media wiki url to the strings folder

* add string resources to UI, removed apostrophe from qq-strings

* remove replace child composable context with activity context

* fix linting error

* move mediawiki link to strings_no_transalte and remove everywhere else

* removed pagerState from onboarding composable route
Base automatically changed from yearInReview_design to main June 23, 2025 21:58
@cooltey cooltey closed this Jul 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Experimental Experiments and prototypes HOLD Will review as soon as other more pressing PRs are merged/released. WIP Work in progress
Development

Successfully merging this pull request may close these issues.

2 participants