Author: dashorst
Date: Tue Jul 13 20:09:49 2010
New Revision: 963848

URL: http://svn.apache.org/viewvc?rev=963848&view=rev
Log:
Forward port of r963681

Modified:
    wicket/trunk/   (props changed)
    wicket/trunk/CHANGELOG-1.4   (props changed)
    wicket/trunk/wicket/   (props changed)
    wicket/trunk/wicket-devutils/pom.xml   (props changed)
    
wicket/trunk/wicket-devutils/src/main/java/org/apache/wicket/devutils/inspector/
   (props changed)
    
wicket/trunk/wicket-devutils/src/main/java/org/apache/wicket/devutils/stateless/
   (props changed)
    
wicket/trunk/wicket-devutils/src/test/java/org/apache/wicket/devutils/stateless/
   (props changed)
    wicket/trunk/wicket-examples/   (props changed)
    wicket/trunk/wicket-extensions/   (props changed)
    
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/ClientProperties.java
    
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebClientInfo.java

Propchange: wicket/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,2 +1,3 @@
+/wicket/branches/wicket-1.4.x:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils:760296-760351,760353-760355
 /wicket/trunk/wicket-devutils:760352

Propchange: wicket/trunk/CHANGELOG-1.4
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
+/wicket/branches/wicket-1.4.x/CHANGELOG-1.4:963681
 /wicket/releases/wicket-1.4-m3/CHANGELOG-1.4:674295
 /wicket/releases/wicket-1.4-rc1/CHANGELOG-1.4:709869
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/CHANGELOG-1.4:760296-760351,760353-760355

Propchange: wicket/trunk/wicket/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.4/wicket:653208,653212,653215,653226,653231,654304,655446,655466,655786,658141,658189,659118,659120,662360,663058,671549,671885,687144-688996,698530-698577,701132-701133,701843,701850-701877,704231,708127,722099-722105,726536,728467-728490,731960,734478,739647,739951,745468-745497,749817,755171-755176,759905,760374,764756,769389,769440,774373,781715,781719,790879
+/wicket/branches/wicket-1.4.x/wicket:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket:760296-760351,760353-760355
 /wicket/trunk/wicket-devutils/wicket:760352

Propchange: wicket/trunk/wicket-devutils/pom.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.4/wicket-extensions/pom.xml:659248,661657,662360,677853,688992,698612,700502,701879,725634
+/wicket/branches/wicket-1.4.x/wicket-devutils/pom.xml:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-devutils/pom.xml:760353-760355
 /wicket/trunk/wicket-devutils/wicket-devutils/pom.xml:760352

Propchange: 
wicket/trunk/wicket-devutils/src/main/java/org/apache/wicket/devutils/inspector/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.5/wicket-examples/src/main/java/org/apache/wicket/examples/debug:653211
+/wicket/branches/wicket-1.4.x/wicket-devutils/src/main/java/org/apache/wicket/devutils/inspector:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-devutils/src/main/java/org/apache/wicket/devutils/inspector:760353-760355
 
/wicket/trunk/wicket-devutils/wicket-devutils/src/main/java/org/apache/wicket/devutils/inspector:760352

Propchange: 
wicket/trunk/wicket-devutils/src/main/java/org/apache/wicket/devutils/stateless/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.4/wicket/src/main/java/org/apache/wicket/annotations:653208,653212,653215,653226,653231,654304,655446,655466,655786,658141,658189,659118,659120,662360,663058,671549,671885,687144-688996,698530-698577,701132-701133,701843,701850-701877,704231,708127,722099-722105,726536,728467-728490,731960,734478,739647,739951,745468-745497,749817,755171-755176,759905
+/wicket/branches/wicket-1.4.x/wicket-devutils/src/main/java/org/apache/wicket/devutils/stateless:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-devutils/src/main/java/org/apache/wicket/devutils/stateless:760353-760355
 
/wicket/trunk/wicket-devutils/wicket-devutils/src/main/java/org/apache/wicket/devutils/stateless:760352

Propchange: 
wicket/trunk/wicket-devutils/src/test/java/org/apache/wicket/devutils/stateless/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.4/wicket/src/test/java/org/apache/wicket/annotations:653208,653212,653215,653226,653231,654304,655446,655466,655786,658141,658189,659118,659120,662360,663058,671549,671885,687144-688996,698530-698577,701132-701133,701843,701850-701877,704231,708127,722099-722105,726536,728467-728490,731960,734478,739647,739951,745468-745497,749817,755171-755176,759905
+/wicket/branches/wicket-1.4.x/wicket-devutils/src/test/java/org/apache/wicket/devutils/stateless:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-devutils/src/test/java/org/apache/wicket/devutils/stateless:760353-760355
 
/wicket/trunk/wicket-devutils/wicket-devutils/src/test/java/org/apache/wicket/devutils/stateless:760352

Propchange: wicket/trunk/wicket-examples/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 /wicket/branches/wicket-1.3.x/jdk-1.5/wicket-examples:653211
+/wicket/branches/wicket-1.4.x/wicket-examples:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-examples:760296-760351,760353-760355
 /wicket/trunk/wicket-devutils/wicket-examples:760352

Propchange: wicket/trunk/wicket-extensions/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jul 13 20:09:49 2010
@@ -1,3 +1,4 @@
 
/wicket/branches/wicket-1.3.x/jdk-1.4/wicket-extensions:659248,661657,662360,677853,688992,698612,700502,701879,725634,760368,769440,772653,786424,790850
+/wicket/branches/wicket-1.4.x/wicket-extensions:963681
 
/wicket/sandbox/jthomerson/experimental/wicket-devutils/wicket-extensions:760296-760351,760353-760355
 /wicket/trunk/wicket-devutils/wicket-extensions:760352

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/ClientProperties.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/ClientProperties.java?rev=963848&r1=963847&r2=963848&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/ClientProperties.java
 (original)
+++ 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/ClientProperties.java
 Tue Jul 13 20:09:49 2010
@@ -61,6 +61,7 @@ public class ClientProperties implements
        private boolean browserMozillaFirefox;
        private boolean browserOpera;
        private boolean browserSafari;
+       private boolean browserChrome;
        private int browserVersionMajor = -1;
        private int browserVersionMinor = -1;
        private int browserWidth = -1;
@@ -417,6 +418,16 @@ public class ClientProperties implements
        }
 
        /**
+        * Flag indicating that the browser is a derivative of the Chrome 
browser platform.
+        * 
+        * @return True if a derivative of the Chrome browser platform.
+        */
+       public boolean isBrowserChrome()
+       {
+               return browserChrome;
+       }
+
+       /**
         * 
         * 
         * @return The client's navigator.cookieEnabled property.
@@ -753,6 +764,17 @@ public class ClientProperties implements
        }
 
        /**
+        * Flag indicating that the browser is a derivative of the Chrome 
browser platform.
+        * 
+        * @param browserChrome
+        *            True if a derivative of the Chrome browser platform.
+        */
+       public void setBrowserChrome(boolean browserChrome)
+       {
+               this.browserChrome = browserChrome;
+       }
+
+       /**
         * @param browserVersionMajor
         *            The major version number of the browser.
         */

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebClientInfo.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebClientInfo.java?rev=963848&r1=963847&r2=963848&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebClientInfo.java
 (original)
+++ 
wicket/trunk/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebClientInfo.java
 Tue Jul 13 20:09:49 2010
@@ -147,14 +147,20 @@ public class WebClientInfo extends Clien
        {
                String userAgent = (getUserAgent() != null) ? 
getUserAgent().toLowerCase() : "";
 
+               boolean browserChrome = userAgent.indexOf("chrome") != -1;
                boolean browserOpera = userAgent.indexOf("opera") != -1;
-               boolean browserSafari = userAgent.indexOf("safari") != -1;
                boolean browserKonqueror = userAgent.indexOf("konqueror") != -1;
 
                // Note deceptive user agent fields:
-               // - Konqueror and Safari UA fields contain "like Gecko"
+               // - Konqueror and Chrome UA fields contain "like Gecko"
                // - Opera UA field typically contains "MSIE"
-               boolean deceptiveUserAgent = browserOpera || browserSafari || 
browserKonqueror;
+               // - Chrome UA field contains "Safari"
+               boolean deceptiveUserAgent = browserOpera || browserKonqueror 
|| browserChrome;
+
+               boolean browserSafari = !deceptiveUserAgent && 
userAgent.indexOf("safari") != -1;
+
+               // -Safari UA fields contain "like Gecko"
+               deceptiveUserAgent = deceptiveUserAgent || browserSafari;
 
                boolean browserMozilla = !deceptiveUserAgent && 
userAgent.indexOf("gecko") != -1;
                boolean browserFireFox = userAgent.indexOf("firefox") != -1;
@@ -175,6 +181,10 @@ public class WebClientInfo extends Clien
                {
                        properties.setBrowserSafari(true);
                }
+               else if (browserChrome)
+               {
+                       properties.setBrowserChrome(true);
+               }
                else if (browserMozilla)
                {
                        properties.setBrowserMozilla(true);


Reply via email to