@@ -1969,7 +1969,7 @@ are applicable to regular and static attributes:
1969
1969
The following [=extended attributes=]
1970
1970
are applicable only to regular attributes:
1971
1971
[{{LegacyLenientSetter}}],
1972
- [{{LenientThis }}],
1972
+ [{{LegacyLenientThis }}],
1973
1973
[{{PutForwards}}],
1974
1974
[{{Replaceable}}],
1975
1975
[{{Unforgeable}}].
@@ -9836,18 +9836,18 @@ See the <a href="#es-attributes">Attributes</a> section for how
9836
9836
</div>
9837
9837
9838
9838
9839
- <h4 id="LenientThis " extended-attribute lt="LenientThis">[LenientThis ]</h4>
9839
+ <h4 id="LegacyLenientThis " extended-attribute lt="LegacyLenientThis" oldids=" LenientThis">[LegacyLenientThis ]</h4>
9840
9840
9841
9841
<div class="advisement">
9842
9842
9843
- Specifications should not use [{{LenientThis }}]
9843
+ Specifications should not use [{{LegacyLenientThis }}]
9844
9844
unless required for compatibility reasons.
9845
9845
Editors who wish to use this feature are strongly advised to discuss this
9846
- by <a href="https://github.com/heycam/webidl/issues/new?title=Intent%20to%20use%20[LenientThis ]">filing an issue</a>
9846
+ by <a href="https://github.com/heycam/webidl/issues/new?title=Intent%20to%20use%20[LegacyLenientThis ]">filing an issue</a>
9847
9847
before proceeding.
9848
9848
9849
9849
<small class="non-normative">
9850
- The [{{LenientThis }}] [=extended attribute=] appears on
9850
+ The [{{LegacyLenientThis }}] [=extended attribute=] appears on
9851
9851
the {{Document/onreadystatechange}},
9852
9852
{{Document/onmouseenter}}, and
9853
9853
{{Document/onmouseleave}} [=attributes=]
@@ -9856,37 +9856,37 @@ See the <a href="#es-attributes">Attributes</a> section for how
9856
9856
9857
9857
</div>
9858
9858
9859
- If the [{{LenientThis }}]
9859
+ If the [{{LegacyLenientThis }}]
9860
9860
[=extended attribute=]
9861
9861
appears on a [=regular attribute=],
9862
9862
it indicates that invocations of the attribute’s getter or setter
9863
9863
with a <emu-val>this</emu-val> value that is not an
9864
9864
object that [=implements=] the [=interface=]
9865
9865
on which the attribute appears will be ignored.
9866
9866
9867
- The [{{LenientThis }}] extended attribute
9867
+ The [{{LegacyLenientThis }}] extended attribute
9868
9868
must
9869
9869
[=takes no arguments|take no arguments=].
9870
9870
It must not be used on a
9871
9871
[=static attribute=].
9872
9872
9873
- The [{{LenientThis }}] extended attribute must not be used on an attribute declared on a
9873
+ The [{{LegacyLenientThis }}] extended attribute must not be used on an attribute declared on a
9874
9874
[=namespace=].
9875
9875
9876
9876
See the <a href="#es-attributes">Attributes</a> section for how
9877
- [{{LenientThis }}]
9877
+ [{{LegacyLenientThis }}]
9878
9878
is to be implemented.
9879
9879
9880
9880
<div class="example">
9881
9881
9882
9882
The following IDL fragment defines an interface that uses the
9883
- [{{LenientThis }}] extended
9883
+ [{{LegacyLenientThis }}] extended
9884
9884
attribute.
9885
9885
9886
9886
<pre highlight="webidl">
9887
9887
[Exposed=Window]
9888
9888
interface Example {
9889
- [LenientThis ] attribute DOMString x;
9889
+ [LegacyLenientThis ] attribute DOMString x;
9890
9890
attribute DOMString y;
9891
9891
};
9892
9892
</pre>
@@ -9903,10 +9903,10 @@ is to be implemented.
9903
9903
// Fine.
9904
9904
example.x;
9905
9905
9906
- // Ignored, since the this value is not an Example object and [LenientThis ] is used.
9906
+ // Ignored, since the this value is not an Example object and [LegacyLenientThis ] is used.
9907
9907
Object.getOwnPropertyDescriptor(Example.prototype, "x").get.call(obj);
9908
9908
9909
- // Also ignored, since Example.prototype is not an Example object and [LenientThis ] is used.
9909
+ // Also ignored, since Example.prototype is not an Example object and [LegacyLenientThis ] is used.
9910
9910
Example.prototype.x;
9911
9911
9912
9912
// Throws a TypeError, since Example.prototype is not an Example object.
@@ -11740,13 +11740,13 @@ in which case they are exposed on every object that [=implements=] the interface
11740
11740
<emu-val>null</emu-val> or <emu-val>undefined</emu-val>, or |realm|'s
11741
11741
[=Realm/global object=] otherwise.
11742
11742
(This will subsequently cause a {{ECMAScript/TypeError}} in a few steps, if
11743
- the global object does not implement |target| and [{{LenientThis }}] is not
11743
+ the global object does not implement |target| and [{{LegacyLenientThis }}] is not
11744
11744
specified.)
11745
11745
<!-- https://www.w3.org/Bugs/Public/show_bug.cgi?id=18547#c9 -->
11746
11746
1. If |esValue| [=is a platform object=], then [=perform a security check=],
11747
11747
passing |esValue|, |attribute|'s [=identifier=], and "getter".
11748
11748
1. If |esValue| does not [=implement=] |target|, then:
11749
- 1. If |attribute| was specified with the [{{LenientThis }}]
11749
+ 1. If |attribute| was specified with the [{{LegacyLenientThis }}]
11750
11750
[=extended attribute=], then return <emu-val>undefined</emu-val>.
11751
11751
1. Otherwise, [=ECMAScript/throw=] a {{ECMAScript/TypeError}}.
11752
11752
1. If |attribute|'s type is an [=observable array type=], then return |esValue|'s
@@ -11793,13 +11793,13 @@ in which case they are exposed on every object that [=implements=] the interface
11793
11793
<emu-val>null</emu-val> or <emu-val>undefined</emu-val>, or |realm|'s
11794
11794
[=Realm/global object=] otherwise.
11795
11795
(This will subsequently cause a {{ECMAScript/TypeError}} in a few steps, if
11796
- the global object does not implement |target| and [{{LenientThis }}] is not
11796
+ the global object does not implement |target| and [{{LegacyLenientThis }}] is not
11797
11797
specified.)
11798
11798
<!-- https://www.w3.org/Bugs/Public/show_bug.cgi?id=18547#c9 -->
11799
11799
1. If |esValue| [=is a platform object=], then [=perform a security check=], passing
11800
11800
|esValue|, |id|, and "setter".
11801
11801
1. Let |validThis| be true if |esValue| [=implements=] |target|, or false otherwise.
11802
- 1. If |validThis| is false and |attribute| was not specified with the [{{LenientThis }}]
11802
+ 1. If |validThis| is false and |attribute| was not specified with the [{{LegacyLenientThis }}]
11803
11803
[=extended attribute=], then [=ECMAScript/throw=] a {{ECMAScript/TypeError}}.
11804
11804
1. If |attribute| is declared with the [{{Replaceable}}] extended attribute, then:
11805
11805
1. Perform [=?=] <a abstract-op>CreateDataProperty</a>(|esValue|, |id|, |V|).
@@ -11935,7 +11935,7 @@ in which case they are exposed on every object that [=implements=] the interface
11935
11935
<emu-val>null</emu-val> or <emu-val>undefined</emu-val>, or |realm|'s
11936
11936
[=Realm/global object=] otherwise.
11937
11937
(This will subsequently cause a {{ECMAScript/TypeError}} in a few steps, if
11938
- the global object does not implement |target| and [{{LenientThis }}] is not
11938
+ the global object does not implement |target| and [{{LegacyLenientThis }}] is not
11939
11939
specified.)
11940
11940
<!-- https://www.w3.org/Bugs/Public/show_bug.cgi?id=18547#c9 -->
11941
11941
1. If |esValue| [=is a platform object=], then [=perform a security check=],
0 commit comments