The \`
Given a [=policy-controlled feature|feature=] (|feature|), null or a navigable container
- (|container|), and an origin for a {{Document}} in
- that container (|origin|), this algorithm returns the [=inherited policy for
- a feature|inherited policy value=] for |feature|.
+ (|container|), an origin for a {{Document}} in
+ that container (|origin|), and an optional boolean (|report-only|), with
+ a default value of False, this algorithm returns the [=inherited policy
+ for a feature|inherited policy value=] for |feature|.
1. If |container| is null, return "Enabled
".
1. If the result of executing Get feature value for
- origin on |feature|, |container|'s node document, and
- |container|'s node document's origin is
+ origin on |feature|, |container|'s node document,
+ |container|'s node document's origin, and |report-only| is
"Disabled
", return "Disabled
".
1. If the result of executing Get feature value for
- origin on |feature|, |container|'s node document, and
- |origin| is "Disabled
", return "Disabled
".
+ origin on |feature|, |container|'s node document, |origin|,
+ and |report-only| is "Disabled
", return
+ "Disabled
".
1. Let |container policy| be the result of running Process
permissions policy attributes on |container|.
1. If |feature| [=map/exists=] in |container policy|:
@@ -1075,10 +1083,12 @@ partial interface HTMLIFrameElement {
Disabled
" if |feature| should be considered
- disabled, and "Enabled
" otherwise.
- 1. Let |policy| be |document|'s [=Document/permissions policy=].
+ (|document|), an [=origin=] (|origin|), and a boolean (|report-only|),
+ this algorithm returns "Disabled
" if |feature| should be
+ considered disabled, and "Enabled
" otherwise.
+ 1. Let |policy| be |document|'s [=Document/report-only permissions
+ policy=] if |report-only| is True, or |document|'s
+ [=Document/permissions policy=] otherwise.
1. If |policy|'s inherited policy for
|feature| is "Disabled
", return "Disabled
".
1. If |feature| is present in |policy|'s declared
@@ -1180,6 +1190,41 @@ partial interface HTMLIFrameElement {
Disabled
":
+ 1. Let |endpoint| be the result of calling Get
+ the reporting endpoint for a feature given |feature| and
+ |document|'s [=Document/permissions policy=].
+ 2. Call Generate report for potential violation
+ of permissions policy on settings given |feature|,
+ |settings|, "Enforce
", and |endpoint|.
+ 2. Else, if the result of running Define an inherited
+ policy for feature in container at origin on |feature|,
+ |container|, |container|'s declared origin and True is
+ "Disabled
":
+ 1. Let |report-only endpoint| be the result of calling Get the reporting endpoint for a feature
+ given |feature| and |document|'s [=Document/report-only
+ permissions policy=].
+ 2. Call Generate report for potential violation
+ of permissions policy on settings given |feature|,
+ |settings|, "Report
", and |report-only
+ endpoint|.
+
+