| "use strict"; |
| |
| /** |
| * Waits until we have at least one frame rendered, regardless of the engine. |
| * |
| * @returns {Promise} |
| */ |
| function waitForAtLeastOneFrame() { |
| return new Promise(resolve => { |
| // Different web engines work slightly different on this area but waiting |
| // for two requestAnimationFrames() to happen, one after another, should be |
| // sufficient to ensure at least one frame has been generated anywhere. |
| window.requestAnimationFrame(() => { |
| window.requestAnimationFrame(() => { |
| resolve(); |
| }); |
| }); |
| }); |
| } |