Wed, 31 Dec 2014 06:55:50 +0100
Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2
michael@0 | 1 | /* Any copyright is dedicated to the public domain. |
michael@0 | 2 | http://creativecommons.org/publicdomain/zero/1.0/ */ |
michael@0 | 3 | |
michael@0 | 4 | // Test that the onmozbrowservisibilitychange event works. |
michael@0 | 5 | 'use strict'; |
michael@0 | 6 | |
michael@0 | 7 | SimpleTest.waitForExplicitFinish(); |
michael@0 | 8 | browserElementTestHelpers.setEnabledPref(true); |
michael@0 | 9 | browserElementTestHelpers.addPermission(); |
michael@0 | 10 | |
michael@0 | 11 | var iframe1 = null; |
michael@0 | 12 | function runTest() { |
michael@0 | 13 | iframe1 = document.createElement('iframe'); |
michael@0 | 14 | SpecialPowers.wrap(iframe1).mozbrowser = true; |
michael@0 | 15 | document.body.appendChild(iframe1); |
michael@0 | 16 | |
michael@0 | 17 | iframe1.src = 'data:text/html,<html><head><title>Title</title></head><body></body></html>'; |
michael@0 | 18 | checkVisibilityFalse(); |
michael@0 | 19 | } |
michael@0 | 20 | |
michael@0 | 21 | function checkVisibilityFalse() { |
michael@0 | 22 | iframe1.addEventListener('mozbrowservisibilitychange', function onvisibilitychange(e) { |
michael@0 | 23 | iframe1.removeEventListener(e.type, onvisibilitychange); |
michael@0 | 24 | |
michael@0 | 25 | is(e.detail.visible, false, 'Visibility should be false'); |
michael@0 | 26 | checkVisibilityTrue(); |
michael@0 | 27 | }); |
michael@0 | 28 | |
michael@0 | 29 | iframe1.setVisible(false); |
michael@0 | 30 | } |
michael@0 | 31 | |
michael@0 | 32 | function checkVisibilityTrue() { |
michael@0 | 33 | iframe1.addEventListener('mozbrowservisibilitychange', function onvisibilitychange(e) { |
michael@0 | 34 | iframe1.removeEventListener(e.type, onvisibilitychange); |
michael@0 | 35 | |
michael@0 | 36 | is(e.detail.visible, true, 'Visibility should be true'); |
michael@0 | 37 | SimpleTest.finish(); |
michael@0 | 38 | }); |
michael@0 | 39 | |
michael@0 | 40 | iframe1.setVisible(true); |
michael@0 | 41 | } |
michael@0 | 42 | |
michael@0 | 43 | addEventListener('testready', runTest); |