| function waitUntilLoadedAndAutofocused() { | |
| return new Promise(function(resolve) { | |
| var loaded = false; | |
| var autofocused = false; | |
| window.addEventListener('load', function() { | |
| loaded = true; | |
| if (autofocused) | |
| resolve(); | |
| }, false); | |
| document.addEventListener('focusin', function() { | |
| if (autofocused) | |
| return; | |
| autofocused = true; | |
| if (loaded) | |
| resolve(); | |
| }, false); | |
| }); | |
| } |