blob: 778f71f4097f7c4537c838890868c77e554a657c [file]
<!DOCTYPE html>
<body>
<script src="../../js/resources/js-test-pre.js"></script>
<input id="timeInput" type="time" value="01:01" style="font-size:20px" autofocus>
<script>
function dispatchKeyEventTo(type, key, target) {
var event = document.createEvent('KeyboardEvent');
event.initKeyboardEvent(type, true, true, document.defaultView, key);
target.dispatchEvent(event);
}
function pseudoOfFocused() {
return internals.youngestShadowRoot(timeInput).activeElement.getAttribute("pseudo");
}
description('Check if focus() for focused input does not change focused sub-field.');
debug('Move focus to the second sub-field:');
var timeInput = document.getElementById('timeInput');
shouldBe('document.activeElement', 'timeInput');
dispatchKeyEventTo('keydown', 'Right', timeInput);
shouldBeEqualToString('pseudoOfFocused(timeInput)', '-webkit-datetime-edit-minute-field');
shouldBeEqualToString('timeInput.focus(); pseudoOfFocused(timeInput)', '-webkit-datetime-edit-minute-field');
debug('Click on a delimiter between sub-fields, then check if focused element is not changed:');
var focusedField = internals.youngestShadowRoot(timeInput).activeElement;
eventSender.mouseMoveTo(focusedField.offsetLeft + focusedField.offsetWidth + 10, focusedField.offsetTop + 10);
eventSender.mouseDown();
eventSender.mouseUp();
shouldBeEqualToString('pseudoOfFocused(timeInput)', '-webkit-datetime-edit-minute-field');
</script>
<script src="../../js/resources/js-test-post.js"></script>
</body>