Skip to content

Commit ee208e3

Browse files
committed
actions: update additional properties section
Create optional properties table Update pointer actions dispatch sections to take the additional properties into account
1 parent aa15dbb commit ee208e3

File tree

1 file changed

+108
-9
lines changed

1 file changed

+108
-9
lines changed

index.html

+108-9
Original file line numberDiff line numberDiff line change
@@ -6908,20 +6908,56 @@ <h3 id=input-source-state>State</h3>
69086908
a <code>pressed</code> property which is a set of unsigned integers,
69096909
an <code>x</code> property which is an unsigned integer,
69106910
and a <code>y</code> property which is an unsigned integer.
6911-
Additionally, it also contains optional properties
6912-
<code>width</code>, <code>height</code>, <code>pressure</code>, and
6913-
<code>tangentialPressure</code> which are floating-point numbers, and
6914-
<code>tiltX</code>, <code>tiltY</code>, and <code>twist</code> which
6915-
are integers in accordance with the requirements of [[!POINTER-EVENTS]].
6911+
6912+
<p>Additionally, a <a>pointer input state</a> object also contains
6913+
<dfn>optional pointer properties</dfn> as shown in the table below
6914+
in accordance with the requirements of [[!POINTER-EVENTS]].
6915+
6916+
<table class=simple>
6917+
<thead>
6918+
<tr>
6919+
<th>Property
6920+
<th>Type
6921+
</tr>
6922+
</thead>
6923+
<tr>
6924+
<td><code>width</code>
6925+
<td><a>floating-point number</a>
6926+
</tr>
6927+
<tr>
6928+
<td><code>height</code>
6929+
<td><a>floating-point number</a>
6930+
</tr>
6931+
<tr>
6932+
<td><code>pressure</code>
6933+
<td><a>floating-point number</a>
6934+
</tr>
6935+
<tr>
6936+
<td><code>tangentialPressure</code>
6937+
<td><a>floating-point number</a>
6938+
</tr>
6939+
<tr>
6940+
<td><code>tiltX</code>
6941+
<td><a>integer</a>
6942+
</tr>
6943+
<tr>
6944+
<td><code>tiltY</code>
6945+
<td><a>integer</a>
6946+
</tr>
6947+
<tr>
6948+
<td><code>twist</code>
6949+
<td><a>integer</a>
6950+
</tr>
6951+
</table>
69166952

69176953
<p>When required to <dfn>create a new pointer input state</dfn> object
69186954
with arguments <var>subtype</var> an implementation must return
69196955
a <a>pointer input state</a> object with <code>subtype</code> set
69206956
to <var>subtype</var>, <code>pressed</code> set to an empty set,
6921-
both <code>x</code> and <code>y</code> set to <code>0</code>, and
6957+
both <code>x</code> and <code>y</code> set to <code>0</code>,
69226958
<code>width</code>, <code>height</code>, <code>pressure</code>,
69236959
<code>tangentialPressure</code>, <code>tiltX</code>, <code>tiltY</code>,
6924-
and <code>twist</code> are set to null.
6960+
and <code>twist</code> set to <a>null</a>.
69256961

69266962
<p>Each <a>session</a> has an associated <dfn>input state table</dfn>.
69276963
This is a map between <a>input id</a>
@@ -8249,6 +8285,9 @@ <h2>Pointer actions</h2>
82498285
<var>input state</var>’s <code>pressed</code> property, and
82508286
let <var>buttons</var> be the resulting value of that property.
82518287

8288+
<li><p><a>Set input state optional pointer properties</a> with
8289+
arguments <var>action object</var>, <var>input state</var>.
8290+
82528291
<li><p>Append a copy of <var>action object</var> with
82538292
the <var>subtype</var> property changed to <var>pointerUp</var> to
82548293
the <a>current session</a>’s <a>input cancel list</a>.
@@ -8258,7 +8297,9 @@ <h2>Pointer actions</h2>
82588297
numbered <var>button</var> on the pointer with ID
82598298
<var>source id</var>, having type <var>pointerType</var> at
82608299
viewport x coordinate <var>x</var>, viewport y
8261-
coordinate <var>y</var>, with buttons <var>buttons</var> depressed
8300+
coordinate <var>y</var>, with buttons <var>buttons</var> depressed,
8301+
and type specific properties set to the <var>input state</var>’s
8302+
<a>optional pointer properties</a> that are not <a>null</a>,
82628303
in accordance with the requirements of [[!UI-EVENTS]] and
82638304
[[!POINTER-EVENTS]]. The generated events must
82648305
set <code>ctrlKey</code>, <code>shiftKey</code>, <code>altKey</code>,
@@ -8296,6 +8337,9 @@ <h2>Pointer actions</h2>
82968337
<li><p>Let <var>y</var> be equal to <var>input state</var>’s
82978338
<code>y</code> property.
82988339

8340+
<li><p><a>Set input state optional pointer properties</a> with
8341+
arguments <var>action object</var>, <var>input state</var>.
8342+
82998343
<li><p>Remove <var>button</var> from the set corresponding
83008344
to <var>input state</var>’s <code>pressed</code> property, and
83018345
let <var>buttons</var> be the resulting value of that
@@ -8307,6 +8351,8 @@ <h2>Pointer actions</h2>
83078351
<var>source id</var> having type <var>pointerType</var> at
83088352
viewport x coordinate <var>x</var>, viewport y
83098353
coordinate <var>y</var>, with buttons <var>buttons</var> depressed,
8354+
and type specific properties set to the <var>input state</var>’s
8355+
<a>optional pointer properties</a> that are not <a>null</a>,
83108356
in accordance with the requirements of [[!UI-EVENTS]] and
83118357
[[!POINTER-EVENTS]]. The generated events must
83128358
set <code>ctrlKey</code>, <code>shiftKey</code>, <code>altKey</code>,
@@ -8384,6 +8430,9 @@ <h2>Pointer actions</h2>
83848430
return <a>error</a> with error code <a>move target out of
83858431
bounds</a>.
83868432

8433+
<li><p><a>Set input state optional pointer properties</a> with
8434+
arguments <var>action object</var>, <var>input state</var>.
8435+
83878436
<li><p>Let <var>duration</var> be equal to
83888437
<var>action object</var>’s <code>duration</code> property if it
83898438
is not <a>undefined</a>, or <var>tick duration</var>
@@ -8455,7 +8504,9 @@ <h2>Pointer actions</h2>
84558504
viewport x coordinate <var>current x</var>, viewport y
84568505
coordinate <var>y</var> to viewport x coordinate <var>x</var> and
84578506
viewport y coordinate <var>y</var>, with
8458-
buttons <var>buttons</var> depressed, in accordance with the
8507+
buttons <var>buttons</var> depressed, and type specific properties
8508+
set to the <var>input state</var>’s <a>optional pointer properties</a>
8509+
that are not <a>null</a>, in accordance with the
84598510
requirements of [[!UI-EVENTS]] and [[!POINTER-EVENTS]]. The
84608511
generated events must set <code>ctrlKey</code>, <code>shiftKey</code>,
84618512
<code>altKey</code>, and <code>metaKey</code> from the
@@ -8508,6 +8559,54 @@ <h2>Pointer actions</h2>
85088559

85098560
</ol>
85108561

8562+
<p>When required to <dfn>set input state optional pointer properties</dfn>
8563+
with arguments <var>action object</var>, <var>input state</var>,
8564+
an implementation must run the following steps:
8565+
8566+
<ol>
8567+
<li><p>Let <var>width</var> be equal to
8568+
<var>action object</var>’s <code>width</code> property.
8569+
8570+
<li><p>If <var>width</var> is not <a>undefined</a>, let <var>input state</var>’s
8571+
<code>width</code> property equal <var>width</var>.
8572+
8573+
<li><p>Let <var>height</var> be equal to
8574+
<var>action object</var>’s <code>height</code> property.
8575+
8576+
<li><p>If <var>height</var> is not <a>undefined</a>, let <var>input state</var>’s
8577+
<code>height</code> property equal <var>height</var>.
8578+
8579+
<li><p>Let <var>pressure</var> be equal to
8580+
<var>action object</var>’s <code>pressure</code> property.
8581+
8582+
<li><p>If <var>pressure</var> is not <a>undefined</a>, let <var>input state</var>’s
8583+
<code>pressure</code> property equal <var>pressure</var>.
8584+
8585+
<li><p>Let <var>tangentialPressure</var> be equal to
8586+
<var>action object</var>’s <code>tangentialPressure</code> property.
8587+
8588+
<li><p>If <var>tangentialPressure</var> is not <a>undefined</a>, let <var>input state</var>’s
8589+
<code>tangentialPressure</code> property equal <var>tangentialPressure</var>.
8590+
8591+
<li><p>Let <var>tiltX</var> be equal to
8592+
<var>action object</var>’s <code>tiltX</code> property.
8593+
8594+
<li><p>If <var>tiltX</var> is not <a>undefined</a>, let <var>input state</var>’s
8595+
<code>tiltX</code> property equal <var>tiltX</var>.
8596+
8597+
<li><p>Let <var>tiltY</var> be equal to
8598+
<var>action object</var>’s <code>tiltY</code> property.
8599+
8600+
<li><p>If <var>tiltY</var> is not <a>undefined</a>, let <var>input state</var>’s
8601+
<code>tiltY</code> property equal <var>tiltY</var>.
8602+
8603+
<li><p>Let <var>twist</var> be equal to
8604+
<var>action object</var>’s <code>twist</code> property.
8605+
8606+
<li><p>If <var>twist</var> is not <a>undefined</a>, let <var>input state</var>’s
8607+
<code>twist</code> property equal <var>twist</var>.
8608+
</ol>
8609+
85118610
<p>When required to <dfn>dispatch a pointerCancel action</dfn> with
85128611
arguments <var>source id</var>, <var>action object</var>,
85138612
<var>input state</var> and <var>tick duration</var> a

0 commit comments

Comments
 (0)