diff options
Diffstat (limited to 'components/script/dom/gamepadevent.rs')
-rw-r--r-- | components/script/dom/gamepadevent.rs | 90 |
1 files changed, 46 insertions, 44 deletions
diff --git a/components/script/dom/gamepadevent.rs b/components/script/dom/gamepadevent.rs index f6690981a57..a6a3ad9e57c 100644 --- a/components/script/dom/gamepadevent.rs +++ b/components/script/dom/gamepadevent.rs @@ -1,50 +1,49 @@ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -use dom::bindings::codegen::Bindings::EventBinding::EventBinding::EventMethods; -use dom::bindings::codegen::Bindings::GamepadEventBinding; -use dom::bindings::codegen::Bindings::GamepadEventBinding::GamepadEventMethods; -use dom::bindings::error::Fallible; -use dom::bindings::inheritance::Castable; -use dom::bindings::js::{JS, Root}; -use dom::bindings::reflector::{DomObject, reflect_dom_object}; -use dom::bindings::str::DOMString; -use dom::event::Event; -use dom::gamepad::Gamepad; -use dom::globalscope::GlobalScope; -use dom::window::Window; +use crate::dom::bindings::codegen::Bindings::EventBinding::EventBinding::EventMethods; +use crate::dom::bindings::codegen::Bindings::GamepadEventBinding; +use crate::dom::bindings::codegen::Bindings::GamepadEventBinding::GamepadEventMethods; +use crate::dom::bindings::error::Fallible; +use crate::dom::bindings::inheritance::Castable; +use crate::dom::bindings::reflector::{reflect_dom_object, DomObject}; +use crate::dom::bindings::root::{Dom, DomRoot}; +use crate::dom::bindings::str::DOMString; +use crate::dom::event::Event; +use crate::dom::gamepad::Gamepad; +use crate::dom::globalscope::GlobalScope; +use crate::dom::window::Window; use dom_struct::dom_struct; use servo_atoms::Atom; #[dom_struct] pub struct GamepadEvent { event: Event, - gamepad: JS<Gamepad>, + gamepad: Dom<Gamepad>, } pub enum GamepadEventType { Connected, - Disconnected + Disconnected, } impl GamepadEvent { fn new_inherited(gamepad: &Gamepad) -> GamepadEvent { GamepadEvent { event: Event::new_inherited(), - gamepad: JS::from_ref(gamepad), + gamepad: Dom::from_ref(gamepad), } } - pub fn new(global: &GlobalScope, - type_: Atom, - bubbles: bool, - cancelable: bool, - gamepad: &Gamepad) - -> Root<GamepadEvent> { - let ev = reflect_dom_object(box GamepadEvent::new_inherited(&gamepad), - global, - GamepadEventBinding::Wrap); + pub fn new( + global: &GlobalScope, + type_: Atom, + bubbles: bool, + cancelable: bool, + gamepad: &Gamepad, + ) -> DomRoot<GamepadEvent> { + let ev = reflect_dom_object(Box::new(GamepadEvent::new_inherited(&gamepad)), global); { let event = ev.upcast::<Event>(); event.init_event(type_, bubbles, cancelable); @@ -52,37 +51,40 @@ impl GamepadEvent { ev } - pub fn new_with_type(global: &GlobalScope, event_type: GamepadEventType, gamepad: &Gamepad) - -> Root<GamepadEvent> { + pub fn new_with_type( + global: &GlobalScope, + event_type: GamepadEventType, + gamepad: &Gamepad, + ) -> DomRoot<GamepadEvent> { let name = match event_type { GamepadEventType::Connected => "gamepadconnected", - GamepadEventType::Disconnected => "gamepaddisconnected" + GamepadEventType::Disconnected => "gamepaddisconnected", }; - GamepadEvent::new(&global, - name.into(), - false, - false, - &gamepad) + GamepadEvent::new(&global, name.into(), false, false, &gamepad) } // https://w3c.github.io/gamepad/#gamepadevent-interface - pub fn Constructor(window: &Window, - type_: DOMString, - init: &GamepadEventBinding::GamepadEventInit) - -> Fallible<Root<GamepadEvent>> { - Ok(GamepadEvent::new(&window.global(), - Atom::from(type_), - init.parent.bubbles, - init.parent.cancelable, - &init.gamepad)) + #[allow(non_snake_case)] + pub fn Constructor( + window: &Window, + type_: DOMString, + init: &GamepadEventBinding::GamepadEventInit, + ) -> Fallible<DomRoot<GamepadEvent>> { + Ok(GamepadEvent::new( + &window.global(), + Atom::from(type_), + init.parent.bubbles, + init.parent.cancelable, + &init.gamepad, + )) } } impl GamepadEventMethods for GamepadEvent { // https://w3c.github.io/gamepad/#gamepadevent-interface - fn Gamepad(&self) -> Root<Gamepad> { - Root::from_ref(&*self.gamepad) + fn Gamepad(&self) -> DomRoot<Gamepad> { + DomRoot::from_ref(&*self.gamepad) } // https://dom.spec.whatwg.org/#dom-event-istrusted |