Use a css expression for hosted.html's disconnect screen in IE6 standards mode.

We can't set a resize handler from the inner frame, and it's a minute enough case that it's not worth adding in extra plumbing just to wedge the resize handler in there.

Review by: jat

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@7137 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html b/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
index 0d05e5a..0846f0b 100644
--- a/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
+++ b/dev/core/src/com/google/gwt/core/ext/linker/impl/hosted.html
@@ -148,7 +148,7 @@
 
 function __gwt_disconnected() {
   // Prevent double-invocation.
-  __gwt_disconnected = new Function();
+  window.__gwt_disconnected = new Function();
   // Do it in a timeout so we can be sure we have a clean stack.
   window.setTimeout(__gwt_disconnected_impl, 1);
 }
@@ -180,21 +180,16 @@
   // Steal focus.
   glass.focus();
   
-  // Setup resize handler for IE6.
   if (navigator.userAgent.indexOf("MSIE 6") >= 0) {
+    glassStyle.width = "125%"; // Get past scroll bar area.
     if (topDoc.compatMode == "BackCompat") {
+      // Works in quirks mode.
       glassStyle.height = "100%";
-      var resizeFunc = function () {
-        glassStyle.width = topDoc.body.clientWidth + 'px';
-      }
     } else {
-      var resizeFunc = function () {
-        glassStyle.width = topDoc.documentElement.clientWidth + 'px';
-        glassStyle.height = topDoc.documentElement.clientHeight + 'px';
-      }
+      // Use a nasty CSS expression in standards mode; ideally we'd use the
+      // onresize event, but the outer window won't let us add one in IE6.
+      glassStyle.setExpression("height", "document.documentElement.clientHeight");
     }
-    topWin.onresize = resizeFunc;
-    resizeFunc();
   }
 }