blob: f1fd9b2da3f860a4c2afcd4176bfc2aee067d2f8 [file] [log] [blame]
<!doctype html>
<meta charset=utf-8>
<html>
<head>
<title>Test Actions</title>
<style>
div { padding:0px; margin: 0px; }
#trackPointer { position: fixed; }
#resultContainer { width: 600px; height: 60px; }
.area { width: 100px; height: 50px; background-color: #ccc; }
</style>
<script>
"use strict";
var els = {};
var allEvents = { events: [] };
function displayMessage(message) {
document.getElementById("events").innerHTML = "<p>" + message + "</p>";
}
function appendMessage(message) {
document.getElementById("events").innerHTML += "<p>" + message + "</p>";
}
function recordPointerEvent(event) {
if (event.type === "contextmenu") {
event.preventDefault();
}
allEvents.events.push({
"type": event.type,
"button": event.button,
"buttons": event.buttons,
"pageX": event.pageX,
"pageY": event.pageY,
"ctrlKey": event.ctrlKey,
"metaKey": event.metaKey,
"altKey": event.altKey,
"shiftKey": event.shiftKey,
"target": event.target.id,
"pointerType": event.pointerType,
"width": event.width,
"height": event.height,
"pressure": event.pressure,
"tangentialPressure": event.tangentialPressure,
"tiltX": event.tiltX,
"tiltY": event.tiltY,
"twist": event.twist,
"altitudeAngle": event.altitudeAngle,
"azimuthAngle": event.azimuthAngle
});
appendMessage(event.type + " " +
"button: " + event.button + ", " +
"pageX: " + event.pageX + ", " +
"pageY: " + event.pageY + ", " +
"button: " + event.button + ", " +
"buttons: " + event.buttons + ", " +
"ctrlKey: " + event.ctrlKey + ", " +
"altKey: " + event.altKey + ", " +
"metaKey: " + event.metaKey + ", " +
"shiftKey: " + event.shiftKey + ", " +
"target id: " + event.target.id + ", " +
"pointerType: " + event.pointerType + ", " +
"width: " + event.width + ", " +
"height: " + event.height + ", " +
"pressure: " + event.pressure + ", " +
"tangentialPressure: " + event.tangentialPressure + ", " +
"tiltX: " + event.tiltX + ", " +
"tiltY: " + event.tiltY + ", " +
"twist: " + event.twist + ", " +
"altitudeAngle: " + event.altitudeAngle + ", " +
"azimuthAngle: " + event.azimuthAngle);
}
function resetEvents() {
allEvents.events.length = 0;
displayMessage("");
}
document.addEventListener("DOMContentLoaded", function() {
var pointerArea = document.getElementById("pointerArea");
pointerArea.addEventListener("pointerdown", recordPointerEvent);
pointerArea.addEventListener("pointermove", recordPointerEvent);
pointerArea.addEventListener("pointerup", recordPointerEvent);
pointerArea.addEventListener("pointerover", recordPointerEvent);
pointerArea.addEventListener("pointerenter", recordPointerEvent);
pointerArea.addEventListener("pointerout", recordPointerEvent);
pointerArea.addEventListener("pointerleave", recordPointerEvent);
});
</script>
</head>
<body>
<div id="trackPointer" class="block"></div>
<div>
<h2>PointerReporter</h2>
<div id="pointerArea" class="area">
</div>
</div>
<div id="resultContainer">
<h2>Events</h2>
<div id="events"></div>
</div>
</body>
</html>