| Index: Source/core/page/DOMWindow.cpp
|
| diff --git a/Source/core/page/DOMWindow.cpp b/Source/core/page/DOMWindow.cpp
|
| index 9e7b2a8efec457ef554685549efaca3faeda4d3a..44f1c2345923f76f0c347f22cc79e68ea47f5c05 100644
|
| --- a/Source/core/page/DOMWindow.cpp
|
| +++ b/Source/core/page/DOMWindow.cpp
|
| @@ -1529,8 +1529,8 @@ bool DOMWindow::addEventListener(const AtomicString& eventType, PassRefPtr<Event
|
| else if (eventType == eventNames().beforeunloadEvent && allowsBeforeUnloadListeners(this))
|
| addBeforeUnloadEventListener(this);
|
| else if (eventType == eventNames().devicemotionEvent && RuntimeEnabledFeatures::deviceMotionEnabled()) {
|
| - if (DeviceMotionController* controller = DeviceMotionController::from(page()))
|
| - controller->addDeviceEventListener(this);
|
| + if (DeviceMotionController* controller = DeviceMotionController::from(document()))
|
| + controller->startUpdating();
|
| } else if (eventType == eventNames().deviceorientationEvent && RuntimeEnabledFeatures::deviceOrientationEnabled()) {
|
| if (DeviceOrientationController* controller = DeviceOrientationController::from(page()))
|
| controller->addDeviceEventListener(this);
|
| @@ -1556,8 +1556,8 @@ bool DOMWindow::removeEventListener(const AtomicString& eventType, EventListener
|
| else if (eventType == eventNames().beforeunloadEvent && allowsBeforeUnloadListeners(this))
|
| removeBeforeUnloadEventListener(this);
|
| else if (eventType == eventNames().devicemotionEvent) {
|
| - if (DeviceMotionController* controller = DeviceMotionController::from(page()))
|
| - controller->removeDeviceEventListener(this);
|
| + if (DeviceMotionController* controller = DeviceMotionController::from(document()))
|
| + controller->stopUpdating();
|
| } else if (eventType == eventNames().deviceorientationEvent) {
|
| if (DeviceOrientationController* controller = DeviceOrientationController::from(page()))
|
| controller->removeDeviceEventListener(this);
|
| @@ -1612,10 +1612,10 @@ void DOMWindow::removeAllEventListeners()
|
| {
|
| EventTarget::removeAllEventListeners();
|
|
|
| - if (DeviceMotionController* controller = DeviceMotionController::from(page()))
|
| - controller->removeAllDeviceEventListeners(this);
|
| + if (DeviceMotionController* controller = DeviceMotionController::from(document()))
|
| + controller->stopUpdating();
|
| if (DeviceOrientationController* controller = DeviceOrientationController::from(page()))
|
| - controller->removeAllDeviceEventListeners(this);
|
| + controller->removeDeviceEventListener(this);
|
| if (Document* document = this->document())
|
| document->didRemoveEventTargetNode(document);
|
|
|
|
|