1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/plugins/test/reftest/plugin-background.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,75 @@ 1.4 +// The including script sets this for us 1.5 +//var NUM_STEPS; 1.6 + 1.7 +var plugin; 1.8 +var left = 1, top = 1, width = 199, height = 199; 1.9 +function movePluginTo(x, y, w, h) { 1.10 + left = x; top = y; width = w; height = h; 1.11 + plugin.width = w; 1.12 + plugin.height = h; 1.13 + plugin.style.left = left + "px"; 1.14 + plugin.style.top = top + "px"; 1.15 +} 1.16 +function deltaInBounds(dx,dy, dw,dh) { 1.17 + var l = dx + left; 1.18 + var r = l + width + dw; 1.19 + var t = dy + top; 1.20 + var b = t + height + dh; 1.21 + return (0 <= l && l <= 20 && 1.22 + 0 <= t && t <= 20 && 1.23 + 200 <= r && r <= 220 && 1.24 + 200 <= b && b <= 220); 1.25 +} 1.26 + 1.27 +var initialFrame; 1.28 +function start() { 1.29 + window.removeEventListener("MozReftestInvalidate", start, false); 1.30 + 1.31 + window.addEventListener("MozAfterPaint", step, false); 1.32 + window.addEventListener("MozPaintWaitFinished", step, false); 1.33 + 1.34 + initialFrame = window.mozPaintCount; 1.35 + plugin = document.getElementById("plugin"); 1.36 + 1.37 + movePluginTo(0,0, 200,200); 1.38 +} 1.39 + 1.40 +var steps = 0; 1.41 +var which = "move"; // or "grow" 1.42 +var dx = 1, dy = 1, dw = 1, dh = 1; 1.43 +function step() { 1.44 + if (++steps >= NUM_STEPS) { 1.45 + window.removeEventListener("MozAfterPaint", step, false); 1.46 + window.removeEventListener("MozPaintWaitFinished", step, false); 1.47 + return finish(); 1.48 + } 1.49 + 1.50 + var didSomething = false; 1.51 + if (which == "grow") { 1.52 + if (deltaInBounds(0,0, dw,dh)) { 1.53 + movePluginTo(left,top, width+dw, height+dh); 1.54 + didSomething = true; 1.55 + } else { 1.56 + dw = -dw; dh = -dh; 1.57 + } 1.58 + } else { 1.59 + // "move" 1.60 + if (deltaInBounds(dx,dy, 0,0)) { 1.61 + movePluginTo(left+dx,top+dy, width, height); 1.62 + didSomething = true; 1.63 + } else { 1.64 + dx = -dx; dy = -dy; 1.65 + } 1.66 + } 1.67 + which = (which == "grow") ? "move" : "grow"; 1.68 + 1.69 + if (!didSomething) { 1.70 + step(); 1.71 + } 1.72 +} 1.73 + 1.74 +function finish() { 1.75 + document.documentElement.removeAttribute("class"); 1.76 +} 1.77 + 1.78 +window.addEventListener("MozReftestInvalidate", start, false);