feat: Shared deck screen redesign - #21854
Open
criticalAY wants to merge 3 commits into
Open
criticalAY wants to merge 3 commits into
criticalAY wants to merge 3 commits into
Conversation
Contributor
|
Important Maintainers: This PR contains Strings changes
|
Contributor
|
Snapshot diff report vs
All 1 changed screenshotsSharedDecksScreenshotTest
|
david-allison
requested changes
Sep 16, 2026
Member
There was a problem hiding this comment.
LGTM (not even that, looks excellent!), one comment on the download calculation.
Please add follow up issues:
- Animation on the progress + indicator, probably every 1s with the text driven by same value
- We need a higher priority issue to handle failues:
- Due to increased AnkiWeb rate limits, a user gets 1 download before they need to log in
- Our UX states 'failed' rather than 'login required'
- Our UX moves to 'sign up' with a very small 'login' button
- Sign up on AnkiWeb does not accept a login
| val timeDiff = currentTime - lastTime | ||
| val bytesDiff = downloadedBytes - lastBytesDownloaded | ||
|
|
||
| if (bytesDiff >= 0) { |
Member
There was a problem hiding this comment.
This handles a byte diff of 0, which is going to happen: we poll every 1s, and upstream produces every 2s.
- Skip 0 by default
- Add a timeout, if the count hasn't moved in N seconds, start to reduce the speed
| } | ||
| } | ||
|
|
||
| @Composable |
Member
There was a problem hiding this comment.
I would like for each component to have a brief description in a KDoc
criticalAY
force-pushed
the
shared-decks-compose
branch
from
September 16, 2026 19:18
598d24b to
8a68ecf
Compare
Member
|
@criticalAY with apologies, could we pause this in favor of: It came up as a bug for 2.25, and there's a fair few changes here |
Contributor
Author
|
Sure! |
Member
|
Thanks so much! PR is up: |
Same layout, strings and colours as the XML it replaces, now on Material 3 components. Insets move from the listener onto the screen.
Colby's Material 3 design from 20962: a big progress ring with the size downloaded, a card saying it's safe to leave, and the actions in a flow row. Content stops at 600dp so it doesn't stretch on tablets. Co-Authored-By: ColbyCabrera <gdthyispro@gmail.com>
Two cards under the ring. Colby's calculator smooths the speed so it doesn't jump between polls, and time left stays blank until there's enough data to estimate it. Co-Authored-By: ColbyCabrera <gdthyispro@gmail.com>
criticalAY
force-pushed
the
shared-decks-compose
branch
from
September 29, 2026 06:46
8a68ecf to
81af5a3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose / Description
Redesign the download deck screen in Compose;
Fixes
NA
Approach
See commits
How Has This Been Tested?
Pixel 10 and Emulator:
Here's Pixel 10 screen rec.
Screen_recording_20260915_103943.mp4
Learning (optional, can help others)
NA
Checklist
Please, go through these checks before submitting the PR.