summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2009-04-30 10:36:02 +0000
committerArtur Signell <artur.signell@itmill.com>2009-04-30 10:36:02 +0000
commit47f23b42f204b28b64bb4cad90927dfcb4dfefd7 (patch)
tree429da46340f67db06c6281ec5abba9a6b2e39565 /src
parent3995bf0b53a7f63164f05888426a790b63155c6f (diff)
downloadvaadin-framework-47f23b42f204b28b64bb4cad90927dfcb4dfefd7.tar.gz
vaadin-framework-47f23b42f204b28b64bb4cad90927dfcb4dfefd7.zip
Fix for #2879 - IE8: IE7 CSS classname should be added to BODY in IE7 Standards mode.
svn changeset:7591/svn branch:6.0
Diffstat (limited to 'src')
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/BrowserInfo.java18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/BrowserInfo.java b/src/com/itmill/toolkit/terminal/gwt/client/BrowserInfo.java
index 0cfc49e879..42e44d0374 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/BrowserInfo.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/BrowserInfo.java
@@ -96,12 +96,12 @@ public class BrowserInfo {
* Examples: Internet Explorer 6: ".i-ie .i-ie6", Firefox 3.0.4:
* ".i-ff .i-ff3", Opera 9.60: ".i-op .i-op96"
*
- * @param prefix
- * a prefix to add to the classnames
* @return
*/
public String getCSSClass() {
String prefix = "i-";
+ boolean ie8 = false;
+
if (cssClass == null) {
String bs = getBrowserString().toLowerCase();
String b = "";
@@ -121,13 +121,25 @@ public class BrowserInfo {
} else if (bs.indexOf(" msie ") != -1) {
b = "ie";
int i = bs.indexOf(" msie ") + 6;
- v = b + bs.substring(i, i + 1);
+ String ieVersion = bs.substring(i, i + 1);
+ v = b + ieVersion;
+
+ // This adds .i-ie7 for ie8 also.
+ // TODO Remove this when IE8 is no longer run in compatibility
+ // mode
+ if (ieVersion != null && ieVersion.equals("8")) {
+ ie8 = true;
+ }
+
} else if (bs.indexOf("opera/") != -1) {
b = "op";
int i = bs.indexOf("opera/") + 6;
v = b + bs.substring(i, i + 3).replace(".", "");
}
cssClass = prefix + b + " " + prefix + v;
+ if (ie8) {
+ cssClass += " " + prefix + "ie7";
+ }
}
return cssClass;