]> source.dussan.org Git - vaadin-framework.git/commitdiff
Fixes #1219; although it's added specifically to Icon resources, caption (error indic...
authorMarc Englund <marc.englund@itmill.com>
Fri, 27 Jun 2008 09:00:55 +0000 (09:00 +0000)
committerMarc Englund <marc.englund@itmill.com>
Fri, 27 Jun 2008 09:00:55 +0000 (09:00 +0000)
svn changeset:4961/svn branch:trunk

WebContent/ITMILL/themes/default/caption/caption.css
src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java
src/com/itmill/toolkit/terminal/gwt/client/Util.java
src/com/itmill/toolkit/terminal/gwt/client/ui/IEmbedded.java
src/com/itmill/toolkit/terminal/gwt/client/ui/Icon.java

index a163f02f4ff0a421b5ec39dcd24386f3b7aa5753..afd2c9fcf1eff5ba6c32a75ba62de514b263243e 100644 (file)
@@ -15,6 +15,8 @@
 }
 * html .i-errorindicator {
        margin-left:-3px;
+       background: transparent none;
+       filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../icons/16/error.png", sizingMethod="scale");
 }
 *+html .i-errorindicator {
        margin-left:-3px;
index 9150fad03b71f576cfba5f14ff30f2c1ecb1af48..a1afdf7c407d5c8840344adb8df9b41cde7cefa9 100755 (executable)
@@ -966,4 +966,19 @@ public class ApplicationConnection {
         tooltip.handleTooltipEvent(event, owner);
 
     }
+
+    /**
+     * Adds PNG-fix conditionally (only for IE6) to the specified IMG -element.
+     * 
+     * @param el
+     *                the IMG element to fix
+     */
+    public void addPngFix(Element el) {
+        BrowserInfo b = BrowserInfo.get();
+        if (b.isIE6()) {
+            Util.addPngFix(el, getThemeUri()
+                    + "/../default/common/img/blank.gif");
+        }
+    }
+
 }
index e1f70c4099cfeb5f1f1e03d5064c9b11a62b0229..3058a6830247f2604c7543e31ee485189de3b9aa 100644 (file)
@@ -124,4 +124,26 @@ public class Util {
         DOM.setInnerText(escapeHtmlHelper, html);
         return DOM.getInnerHTML(escapeHtmlHelper);
     }
+
+    /**
+     * Adds transparent PNG fix to image element; only use for IE6.
+     * 
+     * @param el
+     *                IMG element
+     * @param blankImageUrl
+     *                URL to transparent one-pixel gif
+     */
+    public native static void addPngFix(Element el, String blankImageUrl)
+    /*-{
+        el.attachEvent("onload", function() {
+            var src = el.src;
+            if (src.indexOf(".png")<1) return;
+            var w = el.width||16; 
+            var h = el.height||16;
+            el.src =blankImageUrl;
+            el.style.height = h+"px";
+            el.style.width = w+"px";
+            el.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+src+"', sizingMethod='crop');";  
+        },false);
+    }-*/;
 }
index aa9192fab891013a3859c87de6be14fef33ddc74..d1df5601e83b8a2478ebddb316eeb8eeaee62a57 100644 (file)
@@ -46,6 +46,8 @@ public class IEmbedded extends HTML implements Paintable {
                 }
                 setHTML("<img src=\"" + getSrc(uidl, client) + "\"" + w + h
                         + "/>");
+                client.addPngFix(DOM.getFirstChild(getElement()));
+
             } else if (type.equals("browser")) {
                 if (browserElement == null) {
                     setHTML("<iframe width=\"100%\" height=\"100%\" frameborder=\"0\" src=\""
index daa21c92ae5deb93ede6d28c027385492d85b5c6..52672d69f445385de8861b0908c7fa338416229f 100644 (file)
@@ -5,10 +5,8 @@
 package com.itmill.toolkit.terminal.gwt.client.ui;
 
 import com.google.gwt.user.client.DOM;
-import com.google.gwt.user.client.Element;
 import com.google.gwt.user.client.ui.UIObject;
 import com.itmill.toolkit.terminal.gwt.client.ApplicationConnection;
-import com.itmill.toolkit.terminal.gwt.client.BrowserInfo;
 
 public class Icon extends UIObject {
     private final ApplicationConnection client;
@@ -19,11 +17,7 @@ public class Icon extends UIObject {
         DOM.setElementProperty(getElement(), "alt", "icon");
         setStyleName("i-icon");
         this.client = client;
-        BrowserInfo b = BrowserInfo.get();
-        if (b.isIE6()) {
-            addPngFix(getElement(), client.getThemeUri()
-                    + "/../default/common/img/blank.gif");
-        }
+        client.addPngFix(getElement());
     }
 
     public Icon(ApplicationConnection client, String uidlUri) {
@@ -39,18 +33,4 @@ public class Icon extends UIObject {
         }
     }
 
-    private native static void addPngFix(Element el, String blankImageUrl)
-    /*-{
-        el.attachEvent("onload", function() {
-            var src = el.src;
-            if (src.indexOf(".png")<1) return;
-            var w = el.width||16; 
-            var h = el.height||16;
-            el.src =blankImageUrl;
-            el.style.height = h+"px";
-            el.style.width = w+"px";
-            el.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+src+"', sizingMethod='crop');";  
-        },false);
-    }-*/;
-
 }