<body>
tabbing between forms in design mode: should result tab-space in the focused form.<br>

<pre id="console"></pre>
<input id=i><br>
<input id=j>
<script>

function log(msg)
{
    document.getElementById("console").appendChild(document.createTextNode(msg + "\n"));
}

if (window.testRunner)
    testRunner.dumpAsText();

document.designMode="on";

var e = document.getElementById('i');
e.focus();

if (window.eventSender) {
    var mod = [];
    eventSender.keyDown('\t', mod);
}

log("text in the first input[" + e.value + "]");
log("text in the second input[" + document.getElementById('j').value + "]");

</script>
