<!DOCTYPE html>
<html>
<head>
<script src="../../../../resources/ui-helper.js"></script>
<script src="../../resources/compute-subsets.js"></script>
<script src="../resources/key-tester.js"></script>
<script>
const modiferKeySubsetsToTest = [["metaKey", "ctrlKey"]];
for (const k of keysExcludingDeadAndSkippedKeys) {
    for (const modifiers of modiferKeySubsetsToTest)
        tests.push(new KeyCommand(k, modifiers));
}
</script>
</head>
<body>
<p>This logs DOM keydown, keyup, keypress events that are dispatched when pressing key commands of the form <key>Command<key> + <key>Control<key> + <key>X</key>. Must be run in WebKitTestRunner.</p>
<pre id="console"></pre>
</body>
</html>
