| Index: LayoutTests/fullscreen/full-screen-placeholder.html
|
| diff --git a/LayoutTests/fullscreen/full-screen-placeholder.html b/LayoutTests/fullscreen/full-screen-placeholder.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..60a1c5ffc8691c22c2eb3deb9851585aed809195
|
| --- /dev/null
|
| +++ b/LayoutTests/fullscreen/full-screen-placeholder.html
|
| @@ -0,0 +1,73 @@
|
| +<script src="full-screen-test.js"></script>
|
| +<style>
|
| +#float {
|
| + margin: 10px 0 0 10px;
|
| + height: 50px;
|
| + width: 50px;
|
| + float: left;
|
| + background-color: red;
|
| +}
|
| +#clear {
|
| + clear:left;
|
| +}
|
| +#one {
|
| + background-color: lightblue;
|
| + float: left;
|
| +}
|
| +#two {
|
| + background-color: lightgreen;
|
| +}
|
| +</style>
|
| +<body>
|
| +<div>This layout test checks that the offset positions of the blue and green divs does not change when the red div enters full-screen mode. Press <button onclick="document.getElementById('float').webkitRequestFullScreen()">go full-screen</a> to begin.</div>
|
| +<div id="float"></div>
|
| +<div id="one">One</div>
|
| +<div id="clear" />
|
| +<span id="two">Two</span>
|
| +<script>
|
| + var one = document.getElementById('one');
|
| + var two = document.getElementById('two');
|
| +
|
| + // Bail out early if the full screen API is not enabled or is missing:
|
| + if (Element.prototype.webkitRequestFullScreen == undefined) {
|
| + logResult(false, "Element.prototype.webkitRequestFullScreen == undefined");
|
| + endTest();
|
| + } else {
|
| + var oneState = {'offsetLeft': one.offsetLeft, 'offsetTop': one.offsetTop };
|
| + var twoState = {'offsetLeft': two.offsetLeft, 'offsetTop': two.offsetTop };
|
| +
|
| +
|
| + var callback;
|
| + var fullscreenChanged = function(event)
|
| + {
|
| + if (callback)
|
| + callback(event)
|
| + };
|
| + waitForEvent(document, 'webkitfullscreenchange', fullscreenChanged);
|
| +
|
| + var div = document.getElementById('float');
|
| +
|
| + var divEnteredFullScreen = function() {
|
| + testExpected("document.webkitCurrentFullScreenElement", div);
|
| + testExpected("one.offsetLeft", oneState.offsetLeft);
|
| + testExpected("one.offsetTop", oneState.offsetTop);
|
| + testExpected("two.offsetLeft", twoState.offsetLeft);
|
| + testExpected("two.offsetTop", twoState.offsetTop);
|
| + callback = cancelledFullScreen;
|
| + runWithKeyDown(function(){document.webkitCancelFullScreen()});
|
| + };
|
| +
|
| + var cancelledFullScreen = function() {
|
| + testExpected("document.webkitCurrentFullScreenElement", null);
|
| + testExpected("one.offsetLeft", oneState.offsetLeft);
|
| + testExpected("one.offsetTop", oneState.offsetTop);
|
| + testExpected("two.offsetLeft", twoState.offsetLeft);
|
| + testExpected("two.offsetTop", twoState.offsetTop);
|
| + callback = null;
|
| + endTest();
|
| + };
|
| +
|
| + callback = divEnteredFullScreen;
|
| + runWithKeyDown(function(){div.webkitRequestFullScreen()});
|
| + }
|
| +</script>
|
|
|