Skip to content

Commit 557344d

Browse files
committed
test: add canvas test
1 parent 785a50a commit 557344d

File tree

20 files changed

+168
-6
lines changed

20 files changed

+168
-6
lines changed

bridge/rusty_webf_sys/src/dom/character_data.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,8 @@ impl EventTargetMethods for CharacterData {
5252
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
5353
self.node.dispatch_event(event, exception_state)
5454
}
55+
56+
fn as_event_target(&self) -> &EventTarget {
57+
self.node.as_event_target()
58+
}
5559
}

bridge/rusty_webf_sys/src/dom/comment.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,8 @@ impl EventTargetMethods for Comment {
5353
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
5454
self.character_data.dispatch_event(event, exception_state)
5555
}
56+
57+
fn as_event_target(&self) -> &EventTarget {
58+
self.character_data.as_event_target()
59+
}
5660
}

bridge/rusty_webf_sys/src/dom/container_node.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,10 @@ impl EventTargetMethods for ContainerNode {
7272
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
7373
self.node.dispatch_event(event, exception_state)
7474
}
75+
76+
fn as_event_target(&self) -> &EventTarget {
77+
self.node.as_event_target()
78+
}
7579
}
7680

7781
impl ContainerNodeMethods for ContainerNode {}

bridge/rusty_webf_sys/src/dom/document.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -349,6 +349,10 @@ impl EventTargetMethods for Document {
349349
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
350350
self.container_node.node.event_target.dispatch_event(event, exception_state)
351351
}
352+
353+
fn as_event_target(&self) -> &EventTarget {
354+
self.container_node.node.event_target.as_event_target()
355+
}
352356
}
353357

354358
impl ContainerNodeMethods for Document {}

bridge/rusty_webf_sys/src/dom/document_fragment.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,10 @@ impl EventTargetMethods for DocumentFragment {
7676
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
7777
self.container_node.dispatch_event(event, exception_state)
7878
}
79+
80+
fn as_event_target(&self) -> &EventTarget {
81+
self.container_node.as_event_target()
82+
}
7983
}
8084

8185
impl DocumentFragmentMethods for DocumentFragment {}

bridge/rusty_webf_sys/src/dom/element.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ pub trait ElementMethods: ContainerNodeMethods {
111111
fn style(&self) -> CSSStyleDeclaration;
112112
fn to_blob(&self, exception_state: &ExceptionState) -> WebFNativeFuture<Vec<u8>>;
113113
fn to_blob_with_device_pixel_ratio(&self, device_pixel_ratio: f64, exception_state: &ExceptionState) -> WebFNativeFuture<Vec<u8>>;
114+
fn as_element(&self) -> &Element;
114115
}
115116

116117
impl ContainerNodeMethods for Element {}
@@ -166,6 +167,10 @@ impl EventTargetMethods for Element {
166167
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
167168
self.container_node.dispatch_event(event, exception_state)
168169
}
170+
171+
fn as_event_target(&self) -> &EventTarget {
172+
self.container_node.as_event_target()
173+
}
169174
}
170175

171176
impl ElementMethods for Element {
@@ -178,4 +183,7 @@ impl ElementMethods for Element {
178183
fn to_blob_with_device_pixel_ratio(&self, device_pixel_ratio: f64, exception_state: &ExceptionState) -> WebFNativeFuture<Vec<u8>> {
179184
self.to_blob_with_device_pixel_ratio(device_pixel_ratio, exception_state)
180185
}
186+
fn as_element(&self) -> &Element {
187+
self
188+
}
181189
}

bridge/rusty_webf_sys/src/dom/events/event_target.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ pub struct EventTargetRustMethods {
4949

5050
impl RustMethods for EventTargetRustMethods {}
5151

52-
5352
pub struct EventTarget {
5453
pub ptr: *const OpaquePtr,
5554
status: *const RustValueStatus,
@@ -233,6 +232,8 @@ pub trait EventTargetMethods {
233232
exception_state: &ExceptionState) -> Result<(), String>;
234233

235234
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool;
235+
236+
fn as_event_target(&self) -> &EventTarget;
236237
}
237238

238239
impl Drop for EventTarget {
@@ -281,4 +282,8 @@ impl EventTargetMethods for EventTarget {
281282
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
282283
self.dispatch_event(event, exception_state)
283284
}
285+
286+
fn as_event_target(&self) -> &EventTarget {
287+
self
288+
}
284289
}

bridge/rusty_webf_sys/src/dom/node.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,10 @@ impl EventTargetMethods for Node {
120120
exception_state: &ExceptionState) -> bool{
121121
self.event_target.dispatch_event(event, exception_state)
122122
}
123+
124+
fn as_event_target(&self) -> &EventTarget {
125+
&self.event_target
126+
}
123127
}
124128

125129
impl NodeMethods for Node {

bridge/rusty_webf_sys/src/dom/text.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,8 @@ impl EventTargetMethods for Text {
6969
fn dispatch_event(&self, event: &Event, exception_state: &ExceptionState) -> bool {
7070
self.character_data.dispatch_event(event, exception_state)
7171
}
72+
73+
fn as_event_target(&self) -> &EventTarget {
74+
self.character_data.as_event_target()
75+
}
7276
}

bridge/rusty_webf_sys/src/frame/window.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,4 +108,8 @@ impl EventTargetMethods for Window {
108108
exception_state: &ExceptionState) -> bool{
109109
self.event_target.dispatch_event(event, exception_state)
110110
}
111+
112+
fn as_event_target(&self) -> &EventTarget {
113+
&self.event_target
114+
}
111115
}

0 commit comments

Comments
 (0)