Skip to content

Commit c9c8e22

Browse files
yezhizhensagudev
andauthored
script: Use &mut JSContext in HTMLMapElement&HTMLImageElement (servo#43284)
I just want to be part of the campaign. Testing: It compiles. --------- Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com> Co-authored-by: Sam <16504129+sagudev@users.noreply.github.com>
1 parent 15b74e0 commit c9c8e22

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

components/script/dom/html/htmlimageelement.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1937,9 +1937,9 @@ impl HTMLImageElementMethods<crate::DomTypeHolder> for HTMLImageElement {
19371937
make_setter!(SetReferrerPolicy, "referrerpolicy");
19381938

19391939
/// <https://html.spec.whatwg.org/multipage/#dom-img-decode>
1940-
fn Decode(&self, can_gc: CanGc) -> Rc<Promise> {
1940+
fn Decode(&self, cx: &mut JSContext) -> Rc<Promise> {
19411941
// Step 1. Let promise be a new promise.
1942-
let promise = Promise::new(&self.global(), can_gc);
1942+
let promise = Promise::new2(cx, &self.global());
19431943

19441944
// Step 2. Queue a microtask to perform the following steps:
19451945
let task = ImageElementMicrotask::Decode {

components/script/dom/html/htmlmapelement.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use dom_struct::dom_struct;
66
use html5ever::{LocalName, Prefix};
7+
use js::context::JSContext;
78
use js::rust::HandleObject;
89

910
use crate::dom::bindings::codegen::Bindings::HTMLMapElementBinding::HTMLMapElementMethods;
@@ -67,15 +68,15 @@ impl HTMLMapElementMethods<crate::DomTypeHolder> for HTMLMapElement {
6768
make_atomic_setter!(SetName, "name");
6869

6970
/// <https://html.spec.whatwg.org/multipage/#dom-map-areas>
70-
fn Areas(&self, can_gc: CanGc) -> DomRoot<HTMLCollection> {
71+
fn Areas(&self, cx: &mut JSContext) -> DomRoot<HTMLCollection> {
7172
// The areas attribute must return an HTMLCollection rooted at the map element, whose filter
7273
// matches only area elements.
7374
self.areas.or_init(|| {
7475
HTMLCollection::new_with_filter_fn(
7576
&self.owner_window(),
7677
self.upcast(),
7778
|element, _| element.is::<HTMLAreaElement>(),
78-
can_gc,
79+
CanGc::from_cx(cx),
7980
)
8081
})
8182
}

components/script_bindings/codegen/Bindings.conf

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -477,8 +477,7 @@ DOMInterfaces = {
477477
},
478478

479479
'HTMLImageElement': {
480-
'canGc': ['Decode'],
481-
'cx': ['Image', 'ReportValidity', 'SetCrossOrigin'],
480+
'cx': ['Decode', 'Image', 'ReportValidity', 'SetCrossOrigin'],
482481
},
483482

484483
'HTMLInputElement': {
@@ -492,7 +491,7 @@ DOMInterfaces = {
492491
},
493492

494493
'HTMLMapElement': {
495-
'canGc': ['Areas'],
494+
'cx': ['Areas'],
496495
},
497496

498497
'HTMLMediaElement': {

0 commit comments

Comments
 (0)