blob: 60a1c5ffc8691c22c2eb3deb9851585aed809195 [file] [log] [blame]
<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>