-
Notifications
You must be signed in to change notification settings - Fork 11
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
[feat] Login with Quick Connect #76
base: main
Are you sure you want to change the base?
[feat] Login with Quick Connect #76
Conversation
This commit adds support for the quick connect feature flag in the JellyfinClient+FeatureFlags.swift file. The quick connect feature requires a server version of 10.7 or higher.
… and Quick Connect login support
… Connect availability
This looks pretty good, Thanks in advance! But I honestly wouldn't bother to support quick connect on servers that are not running >= 10.9.x |
Also providing a help text might be neat but unnecessary. The spinner makes it quite clear that AmpFin will automatically detect authorization. I would change the label to something like "Awaiting authorization" and just add a "Learn more" button in a new section below. |
@rasmuslos what do you think of this UI/UX?
|
Looks pretty good, but I would make the bottom text a Section footer and shorten it to something like "Requires Jellyfin 10.9+". Also the copy button seems a bit redundant, tapping the text should copy the code instead, which should be displayed in a monospaced font. |
.onAppear() { | ||
Task { | ||
do { | ||
let (Code, Secret) = try await JellyfinClient.shared.initiateQuickConnect() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can leave out the let
and just assign directly to (code, secret)
. But this code will run on the MainActor (UI Thread) and consequently block it. But concurrency in Swift is quite complex, so I would just make this part of a Login view model, combined with the current login logic, but I am currently busy with ShelfPlayer.
@rasmuslos my apologies for my late response, college has been a bit more busy (and been a bit sick) the past few days, so I haven't had much time to put towards this PR. Here are some screenshots of the updated UIs, please let me know if you would like anything changed.
|
Hey, take your time, I will be very busy next week, so my respond times will get even worse, sorry 😅 The only thing I can think of is applying Otherwise this looks great, Thanks for your work! |
This may be a dumb question, but wouldn't the text being colored be better UX? In my mind it helps call out that the text is interactive (and can be copied to clipboard) upon tapping it.
👍🏽 take your time, there is no rush to finish this PR.
Thanks! 😄 I kinda wish I was a bit better at Swift so I could (understand and) help you do all the changes you want, but sadly I'm not that good at it so some of the changes are up to you. 😅 |
This PR adds support for logging into AmpFin with the Quick Connect feature. There is still an option to use credentials (username/password), but Quick Connect is offered as an alternative.
This PR will remain a draft until the following are completed:
If there is something else I should be doing, let me know! I have also enabled Allow edits by maintainers on this PR, so the developer can edit the code directly on my fork if they want to.
Videos
Quick Connect Supported
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-09-28.at.03.56.11.mp4