diff options
author | Andrew Dolgov <[email protected]> | 2013-03-18 10:26:24 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2013-03-18 10:26:26 +0400 |
commit | f0cfe83e3725f9a3928da97a6e3085e79cb25309 (patch) | |
tree | 4b0af188defaa807c7bc6ff3a101b41c9166c463 /lib/dijit/Viewport.js.uncompressed.js | |
parent | 9a2885da170ffd64358b99194095851a2d09c1b6 (diff) |
upgrade dojo to 1.8.3 (refs #570)
Diffstat (limited to 'lib/dijit/Viewport.js.uncompressed.js')
-rw-r--r-- | lib/dijit/Viewport.js.uncompressed.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/lib/dijit/Viewport.js.uncompressed.js b/lib/dijit/Viewport.js.uncompressed.js new file mode 100644 index 000000000..8de455af2 --- /dev/null +++ b/lib/dijit/Viewport.js.uncompressed.js @@ -0,0 +1,50 @@ +define("dijit/Viewport", [ + "dojo/Evented", + "dojo/on", + "dojo/ready", + "dojo/sniff", + "dojo/_base/window", // global + "dojo/window" // getBox() +], function(Evented, on, ready, has, win, winUtils){ + + // module: + // dijit/Viewport + + /*===== + return { + // summary: + // Utility singleton to watch for viewport resizes, avoiding duplicate notifications + // which can lead to infinite loops. + // description: + // Usage: Viewport.on("resize", myCallback). + // + // myCallback() is called without arguments in case it's _WidgetBase.resize(), + // which would interpret the argument as the size to make the widget. + }; + =====*/ + + var Viewport = new Evented(); + + ready(200, function(){ + var oldBox = winUtils.getBox(); + Viewport._rlh = on(win.global, "resize", function(){ + var newBox = winUtils.getBox(); + if(oldBox.h == newBox.h && oldBox.w == newBox.w){ return; } + oldBox = newBox; + Viewport.emit("resize"); + }); + + // Also catch zoom changes on IE8, since they don't naturally generate resize events + if(has("ie") == 8){ + var deviceXDPI = screen.deviceXDPI; + setInterval(function(){ + if(screen.deviceXDPI != deviceXDPI){ + deviceXDPI = screen.deviceXDPI; + Viewport.emit("resize"); + } + }, 500); + } + }); + + return Viewport; +}); |