From 3f59ca67b49594ce234ba4b62b7418be8f8b8e03 Mon Sep 17 00:00:00 2001
From: Jeffrey Yasskin
Date: Mon, 1 Aug 2016 17:52:48 -0700
Subject: [PATCH] feat(state): delegate to features for constraints
"Permission state" and "extra permission data" didn't explicitly say
that features could constrain them, or give features a clear place to do
it. This commit fixes that.
---
index.bs | 26 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
diff --git a/index.bs b/index.bs
index 747dca8..23c20c8 100644
--- a/index.bs
+++ b/index.bs
@@ -221,7 +221,9 @@ spec: webidl
Return whichever of the following options most accurately reflects the user's
- intent for the calling algorithm:
+ intent for the calling algorithm, taking into account any
+ permission state constraints for
+ |descriptor|.{{PermissionDescriptor/name}}
:
- succeed without prompting the user
- {{"granted"}}
@@ -270,7 +272,8 @@ spec: webidl
Return the instance of |name|'s extra permission data type that
- matches the UA's impression of the user's intent.
+ matches the UA's impression of the user's intent, taking into account
+ any extra permission data constraints for |name|.
@@ -702,14 +705,29 @@ spec: webidl
grant access to midi-without-sysex.
+
+ Optional permission state constraints
+
+ Constraints on the values that the UA can return as a descriptor's
+ permission state. Defaults to no constraints beyond the user's
+ intent.
+
+
An optional extra permission data type
If specified, the extra permission data algorithm is usable for
- this feature. The feature will specify any constraints on the values this
- algorithm can return.
+ this feature.
+
+ Optional extra permission data constraints
+
+ Constraints on the values that the UA can return as a {{PermissionName}}'s
+ extra permission data. Defaults to no constraints beyond the user's
+ intent.
+
+
A permission result type