| Index: Source/core/page/DOMWindow.cpp
|
| diff --git a/Source/core/page/DOMWindow.cpp b/Source/core/page/DOMWindow.cpp
|
| index ff194899cf521d8e9a25f984ee187ac152749ae6..f27269c1eb94d304405dd59f21aeff6a58889273 100644
|
| --- a/Source/core/page/DOMWindow.cpp
|
| +++ b/Source/core/page/DOMWindow.cpp
|
| @@ -1530,8 +1530,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);
|
| @@ -1557,8 +1557,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);
|
| @@ -1613,10 +1613,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);
|
|
|
|
|