Title: [204505] trunk/Source/WebCore
Revision
204505
Author
[email protected]
Date
2016-08-16 09:23:45 -0700 (Tue, 16 Aug 2016)

Log Message

Unreviewed, rolling out r204494.
https://bugs.webkit.org/show_bug.cgi?id=160901

Broke the iOS build (Requested by cdumez on #webkit).

Reverted changeset:

"Drop unused EventTarget::hasActiveEventListeners()"
https://bugs.webkit.org/show_bug.cgi?id=160869
http://trac.webkit.org/changeset/204494

Patch by Commit Queue <[email protected]> on 2016-08-16

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (204504 => 204505)


--- trunk/Source/WebCore/ChangeLog	2016-08-16 15:58:31 UTC (rev 204504)
+++ trunk/Source/WebCore/ChangeLog	2016-08-16 16:23:45 UTC (rev 204505)
@@ -1,3 +1,16 @@
+2016-08-16  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r204494.
+        https://bugs.webkit.org/show_bug.cgi?id=160901
+
+        Broke the iOS build (Requested by cdumez on #webkit).
+
+        Reverted changeset:
+
+        "Drop unused EventTarget::hasActiveEventListeners()"
+        https://bugs.webkit.org/show_bug.cgi?id=160869
+        http://trac.webkit.org/changeset/204494
+
 2016-08-16  Darin Adler  <[email protected]>
 
         * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:

Modified: trunk/Source/WebCore/dom/EventListenerMap.cpp (204504 => 204505)


--- trunk/Source/WebCore/dom/EventListenerMap.cpp	2016-08-16 15:58:31 UTC (rev 204504)
+++ trunk/Source/WebCore/dom/EventListenerMap.cpp	2016-08-16 16:23:45 UTC (rev 204505)
@@ -67,6 +67,19 @@
     return false;
 }
 
+bool EventListenerMap::containsActive(const AtomicString& eventType) const
+{
+    auto* listeners = find(eventType);
+    if (!listeners)
+        return false;
+
+    for (auto& eventListener : *listeners) {
+        if (!eventListener->isPassive())
+            return true;
+    }
+    return false;
+}
+
 void EventListenerMap::clear()
 {
     assertNoActiveIterators();

Modified: trunk/Source/WebCore/dom/EventListenerMap.h (204504 => 204505)


--- trunk/Source/WebCore/dom/EventListenerMap.h	2016-08-16 15:58:31 UTC (rev 204504)
+++ trunk/Source/WebCore/dom/EventListenerMap.h	2016-08-16 16:23:45 UTC (rev 204505)
@@ -51,6 +51,7 @@
     bool isEmpty() const { return m_entries.isEmpty(); }
     bool contains(const AtomicString& eventType) const { return find(eventType); }
     bool containsCapturing(const AtomicString& eventType) const;
+    bool containsActive(const AtomicString& eventType) const;
 
     void clear();
 

Modified: trunk/Source/WebCore/dom/EventTarget.cpp (204504 => 204505)


--- trunk/Source/WebCore/dom/EventTarget.cpp	2016-08-16 15:58:31 UTC (rev 204504)
+++ trunk/Source/WebCore/dom/EventTarget.cpp	2016-08-16 16:23:45 UTC (rev 204505)
@@ -122,6 +122,14 @@
     return nullptr;
 }
 
+bool EventTarget::hasActiveEventListeners(const AtomicString& eventType) const
+{
+    EventTargetData* eventTargetData = const_cast<EventTarget*>(this)->eventTargetData();
+    if (!eventTargetData)
+        return false;
+    return eventTargetData->eventListenerMap.containsActive(eventType);
+}
+
 bool EventTarget::clearAttributeEventListener(const AtomicString& eventType)
 {
     EventListener* listener = getAttributeEventListener(eventType);

Modified: trunk/Source/WebCore/dom/EventTarget.h (204504 => 204505)


--- trunk/Source/WebCore/dom/EventTarget.h	2016-08-16 15:58:31 UTC (rev 204504)
+++ trunk/Source/WebCore/dom/EventTarget.h	2016-08-16 16:23:45 UTC (rev 204505)
@@ -158,6 +158,7 @@
     bool hasEventListeners() const;
     bool hasEventListeners(const AtomicString& eventType) const;
     bool hasCapturingEventListeners(const AtomicString& eventType);
+    bool hasActiveEventListeners(const AtomicString& eventType) const;
     const EventListenerVector& getEventListeners(const AtomicString& eventType);
 
     bool fireEventListeners(Event&);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to