97 lines
3.0 KiB
HTML
97 lines
3.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en-US">
|
|
<head>
|
|
<title>Window Test</title>
|
|
<style>
|
|
/* Background becomes pink in fullscreen mode. */
|
|
:fullscreen {
|
|
background: pink;
|
|
}
|
|
</style>
|
|
<script>
|
|
function setup() {
|
|
if (location.hostname == 'tests' || location.hostname == 'localhost')
|
|
return;
|
|
|
|
alert('This page can only be run from tests or localhost.');
|
|
|
|
// Disable all elements.
|
|
var elements = document.getElementById("form").elements;
|
|
for (var i = 0, element; element = elements[i++]; ) {
|
|
element.disabled = true;
|
|
}
|
|
}
|
|
|
|
function send_message(test, params) {
|
|
var message = 'WindowTest.' + test;
|
|
if (typeof params != 'undefined')
|
|
message += ':' + params;
|
|
|
|
// Results in a call to the OnQuery method in window_test.cpp.
|
|
window.cefQuery({'request' : message});
|
|
}
|
|
|
|
function minimize() {
|
|
send_message('Minimize');
|
|
}
|
|
|
|
function maximize() {
|
|
send_message('Maximize');
|
|
}
|
|
|
|
function restore() {
|
|
minimize();
|
|
setTimeout(function() { send_message('Restore'); }, 1000);
|
|
}
|
|
|
|
function fullscreenWindow() {
|
|
send_message('Fullscreen');
|
|
}
|
|
|
|
function fullscreenBrowser() {
|
|
if (document.fullscreenElement) {
|
|
document.exitFullscreen();
|
|
} else {
|
|
document.getElementById('form').requestFullscreen();
|
|
}
|
|
}
|
|
|
|
function position() {
|
|
var x = parseInt(document.getElementById('x').value);
|
|
var y = parseInt(document.getElementById('y').value);
|
|
var width = parseInt(document.getElementById('width').value);
|
|
var height = parseInt(document.getElementById('height').value);
|
|
if (isNaN(x) || isNaN(y) || isNaN(width) || isNaN(height))
|
|
alert('Please specify a valid numeric value.');
|
|
else
|
|
send_message('Position', x + ',' + y + ',' + width + ',' + height);
|
|
}
|
|
|
|
function setTitlebarHeight() {
|
|
const height = parseFloat(document.getElementById('title_bar_height').value);
|
|
if (isNaN(height))
|
|
send_message('TitlebarHeight');
|
|
else
|
|
send_message('TitlebarHeight', height);
|
|
}
|
|
</script>
|
|
</head>
|
|
<body bgcolor="white" onload="setup()">
|
|
<form id="form">
|
|
Click a button to perform the associated window action.
|
|
<br/><input type="button" onclick="minimize();" value="Minimize">
|
|
<br/><input type="button" onclick="maximize();" value="Maximize">
|
|
<br/><input type="button" onclick="restore();" value="Restore"> (minimizes and then restores the window as topmost)
|
|
<br/><input type="button" onclick="fullscreenWindow();" value="Toggle Window Fullscreen"> (works with Views)
|
|
<br/><input type="button" onclick="fullscreenBrowser();" value="Toggle Browser Fullscreen"> (uses <a href="https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API" target="_new">Fullscreen API</a>; background turns pink)
|
|
<br/><input type="button" onclick="position();" value="Set Position">
|
|
X: <input type="text" size="4" id="x" value="200">
|
|
Y: <input type="text" size="4" id="y" value="100">
|
|
Width: <input type="text" size="4" id="width" value="800">
|
|
Height: <input type="text" size="4" id="height" value="600">
|
|
<br/><input type="button" onclick="setTitlebarHeight();" value="Set Titlebar Height">
|
|
<input type="number" min="0" max="100" id="title_bar_height" value="50"> (works on macOS with Views)
|
|
</form>
|
|
</body>
|
|
</html>
|