Bug 183742 - [Extra zoom mode] Require fullscreen for video playback
Summary: [Extra zoom mode] Require fullscreen for video playback
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Eric Carlson
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2018-03-19 07:10 PDT by Eric Carlson
Modified: 2018-03-19 14:22 PDT (History)
4 users (show)

See Also:


Attachments
Patch (40.98 KB, patch)
2018-03-19 07:26 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff
Patch (40.81 KB, patch)
2018-03-19 07:57 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff
Patch (40.90 KB, patch)
2018-03-19 10:03 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff
Patch (41.26 KB, patch)
2018-03-19 11:26 PDT, Eric Carlson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Carlson 2018-03-19 07:10:25 PDT
Require fullscreen for video playback
Comment 1 Eric Carlson 2018-03-19 07:11:47 PDT
<rdar://problem/38235862>
Comment 2 Eric Carlson 2018-03-19 07:26:18 PDT
Created attachment 336042 [details]
Patch
Comment 3 Jon Lee 2018-03-19 07:51:22 PDT
Comment on attachment 336042 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=336042&action=review

> Source/WebCore/Modules/modern-media-controls/media/playback-support.js:52
> +            this.control.visible = true;

This may cause a problem when a compact player is playing inline. Can we differentiate between when we are in extra zoom mode?
Comment 4 Eric Carlson 2018-03-19 07:57:20 PDT
Created attachment 336044 [details]
Patch
Comment 5 Jer Noble 2018-03-19 10:01:44 PDT
Comment on attachment 336044 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=336044&action=review

> Source/WebCore/html/HTMLMediaElement.cpp:5272
> -            if (m_mediaSession->requiresFullscreenForVideoPlayback(*this) && !isFullscreen())
> +            if (m_mediaSession->requiresFullscreenForVideoPlayback(*this) && !isFullscreen()) {
>                  enterFullscreen();
> +#if ENABLE(EXTRA_ZOOM_MODE)
> +                return;
> +#endif
> +            }

Why not just make the early return unconditional? Then this could be moved outside the if() statement; mitigating any side effects to things like "setDisplayMode()" and "clientWillBeginPlayback()".
Comment 6 Eric Carlson 2018-03-19 10:03:39 PDT
Created attachment 336049 [details]
Patch
Comment 7 Eric Carlson 2018-03-19 11:26:35 PDT
Created attachment 336060 [details]
Patch
Comment 8 WebKit Commit Bot 2018-03-19 14:22:20 PDT
Comment on attachment 336060 [details]
Patch

Clearing flags on attachment: 336060

Committed r229714: <https://trac.webkit.org/changeset/229714>
Comment 9 WebKit Commit Bot 2018-03-19 14:22:21 PDT
All reviewed patches have been landed.  Closing bug.