feat(settings): copy-and-open button and countdown for Simkl sign-in - #765
Merged
ProdigyV21 merged 4 commits intoSep 27, 2026
Merged
Conversation
On a phone the Simkl dialog had no button at all: the user had to remember the code, open a browser, type simkl.com/pin and then the code. It now gets one button that copies the code and opens the Simkl PIN page in the same tap, plus the countdown Trakt already shows. Simkl's PIN page (auth v1) does not take the code from the link, so unlike Trakt the user still pastes it once. The dialog uses its own instruction lines for that reason: the shared activation lines promise the code travels with the link or QR. The poll loop now uses the same deadline the dialog counts down to and stops exactly at it, like the Trakt loop. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014rA75sz1Mv4eqa3oMsgNHN
Owner
|
Reviewed the copy-and-open flow and shared expiry deadline. I also separated Cancel from Disconnect: closing the activation dialog now only cancels polling and clears the dialog, without disconnecting an account or uploading a disconnect. Both Android variants compile and the targeted 128-test batch passes. Live Simkl authorization was not tested with a real account. Original commits/authorship preserved. |
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.
What this changes
Follow-up to #740, answering the request there: "Can you implement the same thing for simkl?"
On a phone the Simkl dialog had no button at all — you had to remember the code, open a browser, type
simkl.com/pinand then type the code. Now:Why it isn't exactly like Trakt
Trakt takes the code from the link (
auth.trakt.tv/activate/<code>), so there the code is filled in for you. Simkl's PIN page doesn't — ARVIO uses Simkl's older sign-in (auth v1), and I checked on a phone:simkl.com/pin/<code>opens with an empty field. So copying the code is the closest we can get with v1. For the same reason:simkl.com/pinpage, andsettings_activation_instruction_*ones, since those say the code travels with the link or QR.Simkl's newer sign-in (auth v2) does return a ready-made link with the code in it (
verification_uri_complete). Their docs say v1 "is expected to stop working around April 2027". Moving to v2 needs a new app registration, a change to the Simkl proxy, token refresh in the app, and every user reconnecting once — those are your calls, so it's not in this PR. Happy to help with it if you want it.Not included either: the "connected" / "expired + retry" panels from #740. Those texts are Trakt-specific, and adding them would make this PR bigger. On expiry Simkl keeps its current behaviour (the dialog closes with the "timed out" message).
Files
SettingsViewModel.kt—simklCodeExpiresAtMillisin the UI state: set on start, cleared everywhere the code is cleared (6 places); the poll loop uses the same deadline.SettingsScreen.kt— the Simkl call site passesonOpenUrl(copy + open), its own phone instruction andexpiresAtMillis. No change to the shared dialog except one outdated comment.values/strings.xml,values-de/strings.xml— 2 new lines; other languages fall back to English, the same as feat(settings): show remaining time, success and expiry in the activation dialog, and put the code in the TV QR code #740.Testing
created by Claude (Anthropic) on behalf of @ReichiMD