Wed, 31 Dec 2014 06:55:50 +0100
Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2
1 /* Any copyright is dedicated to the public domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
4 // Bug 808231 - Add mozbrowsernextpaint event.
5 "use strict";
7 SimpleTest.waitForExplicitFinish();
8 browserElementTestHelpers.setEnabledPref(true);
9 browserElementTestHelpers.addPermission();
11 function runTest() {
12 var iframe = document.createElement('iframe');
13 SpecialPowers.wrap(iframe).mozbrowser = true;
14 document.body.appendChild(iframe);
16 // Add a first listener that we'll remove shortly after.
17 iframe.addNextPaintListener(wrongListener);
19 var gotFirstNextPaintEvent = false;
20 iframe.addNextPaintListener(function () {
21 ok(!gotFirstNextPaintEvent, 'got the first nextpaint event');
23 // Make sure we're only called once.
24 gotFirstNextPaintEvent = true;
26 iframe.addNextPaintListener(function () {
27 info('got the second nextpaint event');
28 SimpleTest.finish();
29 });
31 // Force the iframe to repaint.
32 SimpleTest.executeSoon(function () iframe.src += '#next');
33 });
35 // Remove the first listener to make sure it's not called.
36 iframe.removeNextPaintListener(wrongListener);
37 iframe.src = 'file_browserElement_NextPaint.html';
38 }
40 function wrongListener() {
41 ok(false, 'first listener should have been removed');
42 }
44 addEventListener('testready', runTest);