Skip to content

Commit 9e8d108

Browse files
committed
Rewrite some non-normative text to remove MUST and MUST NOT language.
It is now written as an explanation of requirements elsewhere in the spec. Closes #40.
1 parent 85d5186 commit 9e8d108

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

index.html

+14-13
Original file line numberDiff line numberDiff line change
@@ -187,10 +187,10 @@ <h4>
187187
<a for="Navigator"><code>share</code></a> always shows some form of
188188
UI, to give the user a choice of application and get their approval
189189
to invoke and send data to a potentially native application (which
190-
carries a security risk). For this reason, user agents MUST still
191-
show UI even if there is only a single share target, and MUST NOT
192-
perform any kind of "always use this target" to bypass the UI in
193-
subsequent share operations.
190+
carries a security risk). For this reason, user agents are
191+
prohibited from showing any kind of "always use this target in the
192+
future" option, or bypassing the UI if there is only a single share
193+
target.
194194
</div>
195195
</section>
196196
</section>
@@ -335,22 +335,23 @@ <h2>
335335
(depending on the underlying platform).
336336
</p>
337337
<ul>
338-
<li>User agents MUST NOT allow the website to learn which apps are
339-
installed, or which app was chosen from
340-
<a><code>navigator.share</code></a>. This information could be used for
341-
fingerprinting, as well as leaking details about the user's device.
338+
<li>There is a requirement to not allow the website to learn which apps
339+
are installed, or which app was chosen from
340+
<a><code>navigator.share</code></a>, because this information could be
341+
used for fingerprinting, as well as leaking details about the user's
342+
device.
342343
</li>
343344
<li>Implementors should carefully consider what information is revealed
344345
in the error message when <a><code>navigator.share</code></a> is
345346
rejected. Even distinguishing between the case where no targets are
346347
available and user cancellation may reveal information about which apps
347348
are installed on the user's device.
348349
</li>
349-
<li>On every call to <a><code>navigator.share</code></a>, the user MUST
350-
be presented with a dialog asking them to select a target application
351-
(even if there is only one possible target). This surface serves as a
352-
security confirmation, ensuring that websites cannot silently send data
353-
to native applications.
350+
<li>There is a requirement that <a><code>navigator.share</code></a>
351+
presents the user with a dialog asking them to select a target
352+
application (even if there is only one possible target). This surface
353+
serves as a security confirmation, ensuring that websites cannot
354+
silently send data to native applications.
354355
</li>
355356
<li>Due to the capabilities of the API surface,
356357
<a><code>navigator.share</code></a> is <a data-cite=

0 commit comments

Comments
 (0)