Index: LayoutTests/fast/forms/calendar-picker/calendar-picker-appearance.html |
diff --git a/LayoutTests/fast/forms/calendar-picker/calendar-picker-appearance.html b/LayoutTests/fast/forms/calendar-picker/calendar-picker-appearance.html |
index 2f3f00437417152eb8c4d02f437a95c0947afff6..2b4eca5cdd8188b776a64b1e382ce621e4195e5d 100644 |
--- a/LayoutTests/fast/forms/calendar-picker/calendar-picker-appearance.html |
+++ b/LayoutTests/fast/forms/calendar-picker/calendar-picker-appearance.html |
@@ -2,20 +2,47 @@ |
<html> |
<head> |
<script> |
+window.jsTestIsAsync = true; |
window.enablePixelTesting = true; |
</script> |
<script src="../../../resources/js-test.js"></script> |
-<script src="../../forms/resources/picker-common.js"></script> |
-<script src="resources/calendar-picker-common.js"></script> |
</head> |
<body> |
<input type=date id=date value="10000-12-31"> |
- |
<p id="description" style="opacity: 0"></p> |
<div id="console" style="opacity: 0"></div> |
- |
<script> |
-openPicker(document.getElementById('date'), finishJSTest); |
+function sendKey(input, keyName, ctrlKey, altKey) { |
+ var event = document.createEvent('KeyboardEvent'); |
+ event.initKeyboardEvent('keydown', true, true, document.defaultView, keyName, 0, ctrlKey, altKey); |
+ input.dispatchEvent(event); |
+} |
+ |
+function openPicker(input, callback) { |
+ input.offsetTop; // Force layout. |
+ sendKey(input, "Down", false, true); |
+ callback.call(this); |
+} |
+ |
+function finishWhenOpen() { |
+ // We need to keep moving the window to the top left of available space |
+ // because the window will move back to (0, 0) when the |
+ // ShellViewMsg_SetTestConfiguration IPC arrives. |
+ window.moveTo(); |
+ // FIXME: resize event isn't firing in layout tests so we need to use a |
+ // timer to check if the popup is ready. |
+ if (window.internals.pagePopupWindow.innerWidth) |
+ finishJSTest(); |
+ else |
+ setTimeout(finishWhenOpen, 0); |
+} |
+ |
+// Move window to the top left of available space. |
+window.moveTo(); |
+openPicker(document.getElementById('date'), function () { |
+ finishWhenOpen(); |
+}); |
+ |
</script> |
</body> |
</html> |