Changeset 234078 in webkit


Ignore:
Timestamp:
Jul 20, 2018 5:42:20 PM (6 years ago)
Author:
jer.noble@apple.com
Message:

REGRESSION (r233974): Cannot close pip'd video; pops back into PiP.
https://bugs.webkit.org/show_bug.cgi?id=187873

Reviewed by Jon Lee.

When the PIP machinery on Mac wants to close the PIP window (due to the close button being clicked), it does
not consult our -shouldClosePiP handler; it just tells us that we're going to close. So we never setup the
necessary state on the WebProcess side and still think that our "targetIsFullscreen". When we get the "stop"
action, just request exit fullscreen, but set up the _pipState to think we're already exiting (because we are).

  • platform/mac/VideoFullscreenInterfaceMac.mm:

(-[WebVideoFullscreenInterfaceMacObjC pipActionStop:]):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r234074 r234078  
     12018-07-20  Jer Noble  <jer.noble@apple.com>
     2
     3        REGRESSION (r233974): Cannot close pip'd video; pops back into PiP.
     4        https://bugs.webkit.org/show_bug.cgi?id=187873
     5
     6        Reviewed by Jon Lee.
     7
     8        When the PIP machinery on Mac wants to close the PIP window (due to the close button being clicked), it does
     9        not consult our -shouldClosePiP handler; it just tells us that we're going to close. So we never setup the
     10        necessary state on the WebProcess side and still think that our "targetIsFullscreen". When we get the "stop"
     11        action, just request exit fullscreen, but set up the _pipState to think we're already exiting (because we are).
     12
     13        * platform/mac/VideoFullscreenInterfaceMac.mm:
     14        (-[WebVideoFullscreenInterfaceMacObjC pipActionStop:]):
     15
    1162018-07-20  Justin Fan  <justin_fan@apple.com>
    217
  • trunk/Source/WebCore/platform/mac/VideoFullscreenInterfaceMac.mm

    r233936 r234078  
    336336        playbackSessionModel->pause();
    337337
    338     // FIXME 25096170: Should animate only if the page with the video is unobscured. For now, always close without animation.
    339     [self exitPIP];
     338    _videoFullscreenInterfaceMac->requestHideAndExitFullscreen();
     339    _pipState = PIPState::ExitingPIP;
    340340}
    341341
Note: See TracChangeset for help on using the changeset viewer.