Changeset 91337 in webkit
- Timestamp:
- Jul 19, 2011 10:52:24 PM (13 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r91336 r91337 1 2011-07-19 Steve Lacey <sjl@chromium.org> 2 3 [chromium] Media player controls do not fade out. 4 https://bugs.webkit.org/show_bug.cgi?id=64837 5 6 Media controls were not fading out when the mouse leaves the video 7 due to underlying changes in webkit media controls. 8 Fix was to copy missing code from MediaControlRootElement to 9 MediaControlRootElementChromium. 10 11 Reviewed by Dimitri Glazkov. 12 13 * html/shadow/MediaControlRootElementChromium.cpp: 14 (WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium): 15 (WebCore::MediaControlRootElementChromium::playbackProgressed): 16 (WebCore::MediaControlRootElementChromium::containsRelatedTarget): 17 (WebCore::MediaControlRootElementChromium::defaultEventHandler): 18 * html/shadow/MediaControlRootElementChromium.h: 19 1 20 2011-07-19 Luke Macpherson <macpherson@chromium.org> 2 21 -
trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp
r87671 r91337 31 31 32 32 #include "MediaControlElements.h" 33 #include "MouseEvent.h" 33 34 #include "Page.h" 34 35 #include "RenderTheme.h" … … 50 51 , m_panel(0) 51 52 , m_opaque(true) 53 , m_isMouseOverControls(false) 52 54 { 53 55 } … … 210 212 m_timeline->setPosition(m_mediaElement->currentTime()); 211 213 updateTimeDisplay(); 214 215 if (!m_isMouseOverControls && m_mediaElement->hasVideo()) 216 makeTransparent(); 212 217 } 213 218 … … 260 265 } 261 266 267 bool MediaControlRootElementChromium::containsRelatedTarget(Event* event) 268 { 269 if (!event->isMouseEvent()) 270 return false; 271 EventTarget* relatedTarget = static_cast<MouseEvent*>(event)->relatedTarget(); 272 if (!relatedTarget) 273 return false; 274 return contains(relatedTarget->toNode()); 275 } 276 277 void MediaControlRootElementChromium::defaultEventHandler(Event* event) 278 { 279 MediaControls::defaultEventHandler(event); 280 281 if (event->type() == eventNames().mouseoverEvent) { 282 if (!containsRelatedTarget(event)) { 283 m_isMouseOverControls = true; 284 if (!m_mediaElement->canPlay()) 285 makeOpaque(); 286 } 287 } else if (event->type() == eventNames().mouseoutEvent) { 288 if (!containsRelatedTarget(event)) 289 m_isMouseOverControls = false; 290 } 291 } 292 262 293 void MediaControlRootElementChromium::changedClosedCaptionsVisibility() 263 294 { -
trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.h
r87671 r91337 90 90 MediaControlRootElementChromium(HTMLMediaElement*); 91 91 92 virtual void defaultEventHandler(Event*); 93 92 94 virtual const AtomicString& shadowPseudoId() const; 95 96 bool containsRelatedTarget(Event*); 93 97 94 98 HTMLMediaElement* m_mediaElement; … … 104 108 105 109 bool m_opaque; 110 bool m_isMouseOverControls; 106 111 }; 107 112
Note: See TracChangeset
for help on using the changeset viewer.