diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc b/chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc index 22848fc0ddd..2a6da96b45d 100644 --- a/chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc +++ b/chromium/third_party/blink/renderer/modules/media_controls/elements/media_control_panel_element.cc @@ -10,6 +10,7 @@ #include "third_party/blink/renderer/core/html/media/html_media_element.h" #include "third_party/blink/renderer/modules/media_controls/elements/media_control_elements_helper.h" #include "third_party/blink/renderer/modules/media_controls/media_controls_impl.h" +#include "third_party/blink/renderer/platform/wtf/functional.h" namespace blink { @@ -40,14 +41,15 @@ class MediaControlPanelElement::TransitionEventListener final DCHECK(!attached_); attached_ = true; - element_->addEventListener(EventTypeNames::transitionend, this, false); + element_->addEventListener(event_type_names::kTransitionend, this, false); } void Detach() { DCHECK(attached_); attached_ = false; - element_->removeEventListener(EventTypeNames::transitionend, this, false); + element_->removeEventListener(event_type_names::kTransitionend, this, + false); } bool IsAttached() const { return attached_; } @@ -62,8 +64,11 @@ class MediaControlPanelElement::TransitionEventListener final } private: - void handleEvent(ExecutionContext* context, Event* event) override { - if (event->type() == EventTypeNames::transitionend) { + void Invoke(ExecutionContext* context, Event* event) override { + if (event->target() != element_) + return; + + if (event->type() == event_type_names::kTransitionend) { callback_.Run(); return; } @@ -150,10 +155,11 @@ bool MediaControlPanelElement::EventListenerIsAttachedForTest() const { void MediaControlPanelElement::EnsureTransitionEventListener() { // Create the event listener if it doesn't exist. if (!event_listener_) { - event_listener_ = new MediaControlPanelElement::TransitionEventListener( - this, - WTF::BindRepeating(&MediaControlPanelElement::HandleTransitionEndEvent, - WrapWeakPersistent(this))); + event_listener_ = + MakeGarbageCollected<MediaControlPanelElement::TransitionEventListener>( + this, WTF::BindRepeating( + &MediaControlPanelElement::HandleTransitionEndEvent, + WrapWeakPersistent(this))); } // Attach the event listener if we are not attached. @@ -173,7 +179,8 @@ void MediaControlPanelElement::DetachTransitionEventListener() { void MediaControlPanelElement::DefaultEventHandler(Event& event) { // Suppress the media element activation behavior (toggle play/pause) when // any part of the control panel is clicked. - if (event.type() == EventTypeNames::click && !MediaControlsImpl::IsModern()) { + if (event.type() == event_type_names::kClick && + !MediaControlsImpl::IsModern()) { event.SetDefaultHandled(); return; } |