Revision: 10250
Author: [email protected]
Date: Tue May 31 07:28:25 2011
Log: GWT support for Chrome Frame
http://code.google.com/p/google-web-toolkit/issues/detail?id=5166
Review at http://gwt-code-reviews.appspot.com/1449808
http://code.google.com/p/google-web-toolkit/source/detail?r=10250
Modified:
/trunk/user/src/com/google/gwt/user/rebind/UserAgentPropertyGenerator.java
=======================================
---
/trunk/user/src/com/google/gwt/user/rebind/UserAgentPropertyGenerator.java
Thu Mar 10 03:46:43 2011
+++
/trunk/user/src/com/google/gwt/user/rebind/UserAgentPropertyGenerator.java
Tue May 31 07:28:25 2011
@@ -55,10 +55,28 @@
.println("return (ua.indexOf('opera') != -1);")
.returns("'opera'"),
- // webkit family
+ // webkit family (chrome, safari and chromeframe).
new UserAgentPropertyGeneratorPredicate("safari")
.getPredicateBlock()
- .println("return (ua.indexOf('webkit') != -1);")
+ .println("return (")
+ .println("(ua.indexOf('webkit') != -1)")
+ .println("||")
+ .println("(function() {")
+ .println("if (ua.indexOf('chromeframe') != -1) {")
+ .println("return true;")
+ .println("}")
+ .println("if (typeof window['ActiveXObject'] != 'undefined')
{")
+ .println("try {")
+ .println("var obj = new
ActiveXObject('ChromeTab.ChromeFrame');")
+ .println("if (obj) {")
+ .println("obj.registerBhoIfNeeded();")
+ .println("return true;")
+ .println("}")
+ .println("} catch(e) { }")
+ .println("}")
+ .println("return false;")
+ .println("})()")
+ .println(")")
.returns("'safari'"),
// IE9
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors