Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
125 changes: 92 additions & 33 deletions source
Original file line number Diff line number Diff line change
Expand Up @@ -56934,7 +56934,8 @@ interface <dfn interface>HTMLButtonElement</dfn> : <span>HTMLElement</span> {
<var>validity</var> be false.</p></li>

<li><p>If <var>validity</var> is true, then run the <span data-x="show popover">show popover
algorithm</span> given <var>target</var>, false, and <var>element</var>.</p></li>
algorithm</span> given <var>target</var>, false, <var>element</var>, and
<var>element</var>'s <span>node document</span>.</p></li>

<li>
<p>Otherwise:</p>
Expand All @@ -56961,7 +56962,8 @@ interface <dfn interface>HTMLButtonElement</dfn> : <span>HTMLElement</span> {
<var>validity</var> be false.</p></li>

<li><p>If <var>validity</var> is true, then run the <span data-x="show popover">show popover
algorithm</span> given <var>target</var>, false, and <var>element</var>.</p></li>
algorithm</span> given <var>target</var>, false, <var>element</var>, and
<var>element</var>'s <span>node document</span>.</p></li>
</ol>
</li>

Expand Down Expand Up @@ -57409,7 +57411,8 @@ interface <dfn interface>HTMLSelectElement</dfn> : <span>HTMLElement</span> {
data-x="dom-MouseEvent-button">button</code> attribute is not 0, then return.</p></li>

<li><p>Run the <span>show popover</span> algorithm given <var>select</var>'s <span>select
popover</span>, false, and <var>select</var>.</p></li>
popover</span>, false, <var>select</var>, and <var>select</var>'s <span>node
document</span>.</p></li>
</ol>
</div>

Expand Down Expand Up @@ -66407,6 +66410,10 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
method steps are:</p>

<ol>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p>If <span>this</span> has an <code data-x="attr-dialog-open">open</code> attribute and
<span>is modal</span> of <span>this</span> is false, then return.</p></li>

Expand Down Expand Up @@ -66441,14 +66448,23 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
<li><p>Run <span>hide popovers until</span> given <var>document</var>, <var>hideUntil</var>,
false, and true.</p></li>

<li><p>Run the <span>dialog focusing steps</span> given <span>this</span>.</p></li>
<li><p>Run the <span>dialog focusing steps</span> given <span>this</span> and
<var>focusSetterDocument</var>.</p></li>
</ol>
</div>

<div algorithm>
<p>The <dfn method for="HTMLDialogElement"><code
data-x="dom-dialog-showModal">showModal()</code></dfn> method steps are to <span>show a modal
dialog</span> given <span>this</span> and null.</p>
data-x="dom-dialog-showModal">showModal()</code></dfn> method steps are:</p>

<ol>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p><span>Show a modal dialog</span> given <span>this</span>, null, and
<var>focusSetterDocument</var>.</p></li>
</ol>
</div>

<div algorithm>
Expand Down Expand Up @@ -66625,8 +66641,9 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
</div>

<div algorithm>
<p>To <dfn>show a modal dialog</dfn> given a <code>dialog</code> element <var>subject</var> and an
<code>Element</code> or null <var>source</var>:</p>
<p>To <dfn>show a modal dialog</dfn> given a <code>dialog</code> element <var>subject</var>, an
<code>Element</code> or null <var>source</var>, and a <code>Document</code>
<var>focusSetterDocument</var>:</p>

<ol>
<li><p>If <var>subject</var> has an <code data-x="attr-dialog-open">open</code> attribute and
Expand Down Expand Up @@ -66700,7 +66717,8 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
<li><p>Run <span>hide popovers until</span> given <var>document</var>, <var>hideUntil</var>,
false, and true.</p></li>

<li><p>Run the <span>dialog focusing steps</span> given <var>subject</var>.</p></li>
<li><p>Run the <span>dialog focusing steps</span> given <var>subject</var> and
<var>focusSetterDocument</var>.</p></li>
</ol>
</div>

Expand Down Expand Up @@ -66781,7 +66799,8 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
<li><p>If <var>command</var> is the <span
data-x="attr-button-command-show-modal-state">Show Modal</span> state and <var>element</var> does
not have an <code data-x="attr-dialog-open">open</code> attribute, then
<span>show a modal dialog</span> given <var>element</var> and <var>source</var>.</p></li>
<span>show a modal dialog</span> given <var>element</var>, <var>source</var>, and
<var>source</var>'s <span>node document</span>.</p></li>
</ol>
</div>

Expand Down Expand Up @@ -66973,12 +66992,15 @@ interface <dfn interface>HTMLDialogElement</dfn> : <span>HTMLElement</span> {
</div>

<div algorithm>
<p>The <dfn>dialog focusing steps</dfn>, given a <code>dialog</code> element <var>subject</var>,
are as follows:</p>
<p>The <dfn>dialog focusing steps</dfn>, given a <code>dialog</code> element <var>subject</var>
and a <code>Document</code> <var>focusSetterDocument</var>, are as follows:</p>

<ol>
<li><p>If the <span>allow focus steps</span> given <var>subject</var>'s <span>node
document</span> return false, then return.</p></li>
<li><p>If <var>subject</var>'s <span>node document</span> is not <span>fully active</span>, then
return.</p></li>

<li><p>If the <span>allow focus steps</span> given <var>focusSetterDocument</var> return false,
then return.</p></li>

<li><p>Let <var>control</var> be null.</p></li>

Expand Down Expand Up @@ -87402,8 +87424,12 @@ dictionary <dfn dictionary>CommandEventInit</dfn> : <span>EventInit</span> {

<li><p>If <var>current</var> is null, then return.</p></li>

<li><p>If the <span>allow focus steps</span> given <var>current</var>'s <span
data-x="nav-document">active document</span> return false, then return.</p></li>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p>If the <span>allow focus steps</span> given <var>focusSetterDocument</var> return false,
then return.</p></li>

<li><p>Run the <span>focusing steps</span> with <var>current</var>.</p></li>

Expand All @@ -87430,8 +87456,12 @@ dictionary <dfn dictionary>CommandEventInit</dfn> : <span>EventInit</span> {
data-x="dom-focus">focus(<var>options</var>)</code></dfn> method steps are:</p>

<ol>
<li><p>If the <span>allow focus steps</span> given <span>this</span>'s <span>node document</span>
return false, then return.</p></li>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p>If the <span>allow focus steps</span> given <var>focusSetterDocument</var> return false,
then return.</p></li>

<li><p>Run the <span>focusing steps</span> for <span>this</span>.</p></li>

Expand Down Expand Up @@ -87469,15 +87499,31 @@ dictionary <dfn dictionary>CommandEventInit</dfn> : <span>EventInit</span> {

<div algorithm>
<p>The <dfn export>allow focus steps</dfn>, given a <code>Document</code> object
<var>target</var>, are:</p>
<var>focusSetterDocument</var>, are:</p>

<ol>
<li><p>If <var>target</var> is <span>allowed to use</span> the "<code
<li><p>If <var>focusSetterDocument</var> is <span>allowed to use</span> the "<code
data-x="focus-without-user-activation-feature">focus-without-user-activation</code>" feature,
then return true.</p></li>

<li><p>If <var>target</var>'s <span>relevant global object</span> has <span>transient
activation</span>, then return true.</p></li>
<li><p>If <var>focusSetterDocument</var>'s <span>relevant global object</span> has
<span>transient activation</span>, then return true.</p></li>

<li><p>If <var>focusSetterDocument</var> is not <span>fully active</span>, then return
false.</p></li>

<li>
<p>For each <var>navigable</var> in the <span>inclusive descendant navigables</span> of
<var>focusSetterDocument</var>:</p>

<ol>
<li><p>Let <var>descendantDocument</var> be <var>navigable</var>'s <span
data-x="nav-document">active document</span>.</p></li>

<li><p>If running the <span>has focus steps</span> given <var>descendantDocument</var> returns
true, then return true.</p></li>
</ol>
</li>

<li><p>Return false.</p></li>
</ol>
Expand Down Expand Up @@ -92218,19 +92264,24 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
data-x="dom-showPopover">showPopover(<var>options</var>)</code></dfn> method steps are:</p>

<ol>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p>Let <var>source</var> be <var>options</var>["<code
data-x="dom-ShowPopoverOptions-source">source</code>"] if it <span data-x="map
exists">exists</span>; otherwise, null.</p></li>

<li><p>Run <span>show popover</span> given <span>this</span>, true, and
<var>source</var>.</p></li>
<li><p>Run <span>show popover</span> given <span>this</span>, true, <var>source</var>, and
<var>focusSetterDocument</var>.</p></li>
</ol>
</div>

<div algorithm>
<p>To <dfn>show popover</dfn>, given an <span data-x="HTML elements">HTML element</span>
<var>element</var>, a boolean <var>throwExceptions</var>, and an <span data-x="HTML elements">HTML
element</span> or null <var>source</var>:</p>
<var>element</var>, a boolean <var>throwExceptions</var>, an <span data-x="HTML elements">HTML
element</span> or null <var>source</var>, and a <code>Document</code>
<var>focusSetterDocument</var>:</p>

<ol>
<li><p>Let <var>document</var> be <var>element</var>'s <span>node document</span>.</p></li>
Expand Down Expand Up @@ -92471,7 +92522,8 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
<li><p>Set <var>element</var>'s <span>implicit anchor element</span> to
<var>source</var>.</p></li>

<li><p>Run the <span>popover focusing steps</span> given <var>element</var>.</p></li>
<li><p>Run the <span>popover focusing steps</span> given <var>element</var> and
<var>focusSetterDocument</var>.</p></li>

<li><p>If <var>shouldRestoreFocus</var> is true and <var>element</var>'s <code
data-x="attr-popover">popover</code> attribute is not in the <span
Expand Down Expand Up @@ -92738,6 +92790,10 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
data-x="dom-togglePopover">togglePopover(<var>options</var>)</code></dfn> method steps are:</p>

<ol>
<li><p>Let <var>focusSetterDocument</var> be the <span
data-x="concept-incumbent-global">incumbent global object</span>'s <span
data-x="concept-document-window">associated <code>Document</code></span>.</p></li>

<li><p>Let <var>force</var> be null.</p></li>

<li><p>If <var>options</var> is a boolean, set <var>force</var> to <var>options</var>.</p></li>
Expand All @@ -92757,7 +92813,7 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
null.</p></li>

<li><p>Otherwise, if <var>force</var> is null or true, then run <span>show popover</span> given
<span>this</span>, true, and <var>source</var>.</p></li>
<span>this</span>, true, <var>source</var>, and <var>focusSetterDocument</var>.</p></li>

<li>
<p>Otherwise:</p>
Expand Down Expand Up @@ -93002,14 +93058,15 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {

<div algorithm>
<p>To perform the <dfn>popover focusing steps</dfn> for an <span data-x="HTML elements">HTML
element</span> <var>subject</var>:</p>
element</span> <var>subject</var> and a <code>Document</code>
<var>focusSetterDocument</var>:</p>

<ol>
<li><p>If the <span>allow focus steps</span> given <var>subject</var>'s <span>node
document</span> return false, then return.</p></li>
<li><p>If the <span>allow focus steps</span> given <var>focusSetterDocument</var> return false,
then return.</p></li>

<li><p>If <var>subject</var> is a <code>dialog</code> element, then run the <span>dialog focusing
steps</span> given <var>subject</var> and return.</p></li>
steps</span> given <var>subject</var> and <var>focusSetterDocument</var>, and return.</p></li>

<li><p>If <var>subject</var> has the <code data-x="attr-fe-autofocus">autofocus</code>
attribute, then let <var>control</var> be <var>subject</var>.
Expand Down Expand Up @@ -93292,7 +93349,8 @@ dictionary <dfn dictionary>DragEventInit</dfn> : <span>MouseEventInit</span> {
<var>validity</var> be false.</p></li>

<li><p>If <var>validity</var> is true, then run <span>show popover</span> given
<var>popover</var>, false, and <var>node</var>.</p></li>
<var>popover</var>, false, <var>node</var>, and <var>node</var>'s <span>node
document</span>.</p></li>
</ol>
</li>
</ol>
Expand Down Expand Up @@ -162133,6 +162191,7 @@ INSERT INTERFACES HERE
Félix Sanz,
Felix Sasaki,
Fernando Altomare Serboncini,
Fernando Fiori,
Forbes Lindesay,
Francesco Schwarz,
Francis Brosnan Blazquez,
Expand Down