Bug 256566

Summary: Inconsistent full screen behaviour between video and element
Product: WebKit Reporter: Jean-Yves Avenard [:jya] <jean-yves.avenard>
Component: MediaAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: jer.noble, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Jean-Yves Avenard [:jya] 2023-05-09 18:24:05 PDT
Consider the following test file:
https://jyavenard.github.io/htmltests/tests/mse_mp4/bipbop_fullscreen.html

The page has a video element within a <div></div>

It has two buttons, one will call requestFullscreen() on the video element, the other on the div parent element instead.

STR: 
On an iPad:
1- Load the page https://jyavenard.github.io/htmltests/tests/mse_mp4/bipbop_fullscreen.html
2- click on the button "video fullscreen"
3- now press the PiP button in the top left corner
4- tap on the "video fullscreen button again"

Now, notice that after step 2, no banner "jyavenard.github.io is in fullscreen is shown"
and step 4 does nothing.

Now we repeat the above steps, but this time with the "Div fullscreen" button
5- Load the page https://jyavenard.github.io/htmltests/tests/mse_mp4/bipbop_fullscreen.html
6- click on the button "video fullscreen"
7- now press the PiP button in the top left corner
8- tap on the "video fullscreen button again"

Now, notice that after step 6, the banner "jyavenard.github.io is in fullscreen" is shown
and step 8 the element goes to full screen.

From a user perspective, the end result is the same: the video plays in full screen. However, depending on which element the JS called to go into fullscreen, there are subtle differences that I believe shouldn't exist.
Comment 1 Radar WebKit Bug Importer 2023-05-09 18:24:27 PDT
<rdar://problem/109128622>