]> source.dussan.org Git - gwtquery.git/commitdiff
Fix $(window).width/height
authorManolo Carrasco <manolo@apache.org>
Mon, 25 Apr 2011 11:39:39 +0000 (11:39 +0000)
committerManolo Carrasco <manolo@apache.org>
Mon, 25 Apr 2011 11:39:39 +0000 (11:39 +0000)
gwtquery-core/src/main/java/com/google/gwt/query/client/impl/DocumentStyleImpl.java
gwtquery-core/src/test/java/com/google/gwt/query/client/GQueryCoreTest.java

index 477b2afd939eb0d95ffc2d28c19b3e73c62cb2d3..e554f4aede822c00403e2d4924f7f28ecd125d11 100644 (file)
@@ -16,7 +16,9 @@
 package com.google.gwt.query.client.impl;
 
 import com.google.gwt.dom.client.Element;
+import com.google.gwt.query.client.GQuery;
 import com.google.gwt.query.client.js.JsUtils;
+import com.google.gwt.user.client.Window;
 
 /**
  * A helper class to get computed CSS styles for elements.
@@ -48,6 +50,15 @@ public class DocumentStyleImpl {
    * - Otherwise it returns the real computed value.   
    */
   public double cur(Element elem, String prop, boolean force) {
+    if (elem.equals(GQuery.window)) {
+      if ("width".equals(prop)) {
+        return Window.getClientWidth();
+      }
+      if ("height".equals(prop)) {
+        return Window.getClientHeight();
+      }
+      elem = GQuery.body;
+    }
     if (elem.getPropertyString(prop) != null
         && (elem.getStyle() == null || elem.getStyle().getProperty(prop) == null)) {
       return elem.getPropertyDouble(prop);
index b3c6bf94a9c6c899c7e70abaeba6308f6ac48e17..11b153100fcb4fd03d1f9d0ae6e8e91e57f83b53 100644 (file)
@@ -1310,5 +1310,10 @@ public class GQueryCoreTest extends GWTTestCase {
     assertEquals("div", m.get(5).get(0).toLowerCase());
     assertEquals("i", m.get(0).get(0).toLowerCase());
   }
+  
+  public void testWindowSize() {
+    GQuery w = $(GQuery.window);
+    assertTrue(w.width() > 0);
+    assertTrue(w.height() > 0);
+  }
 }