Skip to content
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

Specify the mode API #660

Merged
merged 17 commits into from
Nov 18, 2024
7 changes: 4 additions & 3 deletions spec/index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -787,8 +787,9 @@ the exception thrown.
1. If |mode| is [=active=]
1. If [=transient activation=] is not present, return (failure, true).
tttzach marked this conversation as resolved.
Show resolved Hide resolved
1. If [=transient activation=] is present and there is a pending
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part about pending request is also not precise enough. Presumably this is also scoped to something (perhaps top-level browsing context?). In addition, you are never going to reach this because we disallow this from credential management in 8.2 https://w3c.github.io/webappsec-credential-management/#algorithm-request so that will need to be modified as well at some point

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch on the scoping... let me know if |W|'s top-level browsing context works or if that should be even more specific. Should modifying 8.2 be in this PR?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, you cannot modify 8.2 in this PR since that is a separate repo. I also filed an issue because that uses the wrong scope as well. Need to think how to fix it while also allowing the active mode to be prioritized (eg supersede a pending passive mode request)

request where |mode| is [=passive=], return (failure, true) for the
pending request.
request where |mode| is [=passive=], cancel the previous request
as if a {{CredentialRequestOptions/signal}} was given to it and
was [=AbortSignal/aborted=].
tttzach marked this conversation as resolved.
Show resolved Hide resolved
1. Let |loginStatus| be the result of [=get the login status=] with
tttzach marked this conversation as resolved.
Show resolved Hide resolved
the [=/origin=] of |provider|'s {{IdentityProviderConfig/configURL}}.
1. If |loginStatus| is [=unknown=], a user agent MAY set it to [=logged-out=].
Expand All @@ -802,7 +803,7 @@ the exception thrown.
* If the user cancels this dialog, return (failure, true).
* If the user triggers this affordance,
[=fetch the config file and show an IDP login dialog=].
* If |mode| is [=active=] and [=transient activation=] is present,
* If |mode| is [=active=],
[=fetch the config file and show an IDP login dialog=].

1. Let |requiresUserMediation| be |provider|'s {{IdentityProviderConfig/configURL}}'s [=/origin=]'s
Expand Down
Loading