From 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Tue, 27 Jun 2017 06:07:23 +0000 Subject: webkitgtk-2.16.5 --- Source/WebCore/page/DeviceController.cpp | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'Source/WebCore/page/DeviceController.cpp') 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 prpEvent) +void DeviceController::dispatchDeviceEvent(Event& event) { - RefPtr event = prpEvent; Vector> 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& timer) +void DeviceController::fireDeviceEvent() { - ASSERT_UNUSED(timer, &timer == &m_timer); ASSERT(hasLastData()); m_timer.stop(); Vector> 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); + } } } -- cgit v1.2.1