Changeset 230357 in webkit


Ignore:
Timestamp:
Apr 6, 2018 4:26:03 PM (6 years ago)
Author:
eric.carlson@apple.com
Message:

[Extra zoom mode] Block playback until fullscreen begins
https://bugs.webkit.org/show_bug.cgi?id=184371
<rdar://problem/39250891>

Reviewed by Youenn Fablet.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updatePlayState): Return early when waiting to enter fullscreen.
(WebCore::HTMLMediaElement::enterFullscreen): Set m_waitingToEnterFullscreen.
(WebCore::HTMLMediaElement::exitFullscreen): Clear m_waitingToEnterFullscreen.
(WebCore::HTMLMediaElement::didBecomeFullscreenElement): Ditto.

  • html/HTMLMediaElement.h:
Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r230356 r230357  
     12018-04-06  Eric Carlson  <eric.carlson@apple.com>
     2
     3        [Extra zoom mode] Block playback until fullscreen begins
     4        https://bugs.webkit.org/show_bug.cgi?id=184371
     5        <rdar://problem/39250891>
     6
     7        Reviewed by Youenn Fablet.
     8
     9        * html/HTMLMediaElement.cpp:
     10        (WebCore::HTMLMediaElement::updatePlayState): Return early when waiting to enter fullscreen.
     11        (WebCore::HTMLMediaElement::enterFullscreen): Set m_waitingToEnterFullscreen.
     12        (WebCore::HTMLMediaElement::exitFullscreen): Clear m_waitingToEnterFullscreen.
     13        (WebCore::HTMLMediaElement::didBecomeFullscreenElement): Ditto.
     14        * html/HTMLMediaElement.h:
     15
    1162018-04-06  Brent Fulgham  <bfulgham@apple.com>
    217
  • trunk/Source/WebCore/html/HTMLMediaElement.cpp

    r230211 r230357  
    52635263    INFO_LOG(LOGIDENTIFIER, "shouldBePlaying = ", shouldBePlaying, ", playerPaused = ", playerPaused);
    52645264
    5265     if (shouldBePlaying && playerPaused && m_mediaSession->requiresFullscreenForVideoPlayback(*this) && !isFullscreen()) {
    5266         enterFullscreen();
     5265    if (shouldBePlaying && playerPaused && m_mediaSession->requiresFullscreenForVideoPlayback(*this) && (m_waitingToEnterFullscreen || !isFullscreen())) {
     5266        if (!m_waitingToEnterFullscreen)
     5267            enterFullscreen();
     5268
    52675269#if ENABLE(EXTRA_ZOOM_MODE)
    52685270        // FIXME: Investigate doing this for all builds.
     
    58435845
    58445846    m_temporarilyAllowingInlinePlaybackAfterFullscreen = false;
     5847    m_waitingToEnterFullscreen = true;
    58455848
    58465849#if ENABLE(FULLSCREEN_API)
     
    58845887{
    58855888    INFO_LOG(LOGIDENTIFIER);
     5889
     5890    m_waitingToEnterFullscreen = false;
    58865891
    58875892#if ENABLE(FULLSCREEN_API)
     
    59785983void HTMLMediaElement::didBecomeFullscreenElement()
    59795984{
     5985    m_waitingToEnterFullscreen = false;
    59805986    if (hasMediaControls())
    59815987        mediaControls()->enteredFullscreen();
  • trunk/Source/WebCore/html/HTMLMediaElement.h

    r230194 r230357  
    10751075
    10761076    bool m_isScrubbingRemotely : 1;
     1077    bool m_waitingToEnterFullscreen : 1;
    10771078
    10781079#if ENABLE(VIDEO_TRACK)
Note: See TracChangeset for help on using the changeset viewer.