diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2017-06-27 06:07:23 +0000 |
commit | 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch) | |
tree | 46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebCore/page/DeviceController.cpp | |
parent | 32761a6cee1d0dee366b885b7b9c777e67885688 (diff) | |
download | WebKitGtk-tarball-master.tar.gz |
webkitgtk-2.16.5HEADwebkitgtk-2.16.5master
Diffstat (limited to 'Source/WebCore/page/DeviceController.cpp')
-rw-r--r-- | Source/WebCore/page/DeviceController.cpp | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/Source/WebCore/page/DeviceController.cpp b/Source/WebCore/page/DeviceController.cpp index a2baa23c0..bd5494aa3 100644 --- a/Source/WebCore/page/DeviceController.cpp +++ b/Source/WebCore/page/DeviceController.cpp @@ -29,13 +29,12 @@ #include "DeviceClient.h" #include "Document.h" -#include "Page.h" namespace WebCore { DeviceController::DeviceController(DeviceClient* client) : m_client(client) - , m_timer(this, &DeviceController::fireDeviceEvent) + , m_timer(*this, &DeviceController::fireDeviceEvent) { ASSERT(m_client); } @@ -71,33 +70,31 @@ void DeviceController::removeAllDeviceEventListeners(DOMWindow* window) m_client->stopUpdating(); } -void DeviceController::dispatchDeviceEvent(PassRefPtr<Event> prpEvent) +void DeviceController::dispatchDeviceEvent(Event& event) { - RefPtr<Event> event = prpEvent; Vector<RefPtr<DOMWindow>> listenerVector; copyToVector(m_listeners, listenerVector); - for (size_t i = 0; i < listenerVector.size(); ++i) { - if (listenerVector[i]->document() - && !listenerVector[i]->document()->activeDOMObjectsAreSuspended() - && !listenerVector[i]->document()->activeDOMObjectsAreStopped()) - listenerVector[i]->dispatchEvent(event); + for (auto& listener : listenerVector) { + auto document = listener->document(); + if (document && !document->activeDOMObjectsAreSuspended() && !document->activeDOMObjectsAreStopped()) + listener->dispatchEvent(event); } } -void DeviceController::fireDeviceEvent(Timer<DeviceController>& timer) +void DeviceController::fireDeviceEvent() { - ASSERT_UNUSED(timer, &timer == &m_timer); ASSERT(hasLastData()); m_timer.stop(); Vector<RefPtr<DOMWindow>> listenerVector; copyToVector(m_lastEventListeners, listenerVector); m_lastEventListeners.clear(); - for (size_t i = 0; i < listenerVector.size(); ++i) { - if (listenerVector[i]->document() - && !listenerVector[i]->document()->activeDOMObjectsAreSuspended() - && !listenerVector[i]->document()->activeDOMObjectsAreStopped()) - listenerVector[i]->dispatchEvent(getLastEvent()); + for (auto& listener : listenerVector) { + auto document = listener->document(); + if (document && !document->activeDOMObjectsAreSuspended() && !document->activeDOMObjectsAreStopped()) { + if (auto lastEvent = getLastEvent()) + listener->dispatchEvent(*lastEvent); + } } } |