com.vaadin.terminal.gwt.client
Class BrowserInfo

java.lang.Object
  extended by com.vaadin.terminal.gwt.client.BrowserInfo

public class BrowserInfo
extends Object

Class used to query information about web browser. Browser details are detected only once and those are stored in this singleton class.


Field Summary
static String ENGINE_GECKO
           
static String ENGINE_PRESTO
           
static String ENGINE_TRIDENT
           
static String ENGINE_WEBKIT
           
 
Method Summary
static BrowserInfo get()
          Singleton method to get BrowserInfo object.
static String getBrowserString()
           
 String getCSSClass()
          Returns a string representing the browser in use, for use in CSS classnames.
 float getGeckoVersion()
          Returns the Gecko version if the browser is Gecko based.
 float getIEVersion()
           
 float getOperaVersion()
           
 int getScreenHeight()
           
 int getScreenWidth()
           
 float getWebkitVersion()
          Returns the WebKit version if the browser is WebKit based.
 boolean isAndroid()
          Checks if the browser is run on Android
 boolean isAndroidWithBrokenScrollTop()
          Tests if this is an Android devices with a broken scrollTop implementation
 boolean isChrome()
           
 boolean isFirefox()
           
 boolean isGecko()
           
 boolean isIE()
           
 boolean isIE8()
           
 boolean isIE9()
           
 boolean isIOS()
          Checks if the browser is run on iOS
 boolean isOpera()
           
 boolean isOpera10()
           
 boolean isOpera11()
           
 boolean isSafari()
           
 boolean isTouchDevice()
           
 boolean isWebkit()
           
 boolean requiresOverflowAutoFix()
          Indicates whether the browser might require juggling to properly update sizes inside elements with overflow: auto.
 boolean requiresTouchScrollDelegate()
          Checks if the browser is capable of handling scrolling natively or if a touch scroll helper is needed for scrolling.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ENGINE_GECKO

public static final String ENGINE_GECKO
See Also:
Constant Field Values

ENGINE_WEBKIT

public static final String ENGINE_WEBKIT
See Also:
Constant Field Values

ENGINE_PRESTO

public static final String ENGINE_PRESTO
See Also:
Constant Field Values

ENGINE_TRIDENT

public static final String ENGINE_TRIDENT
See Also:
Constant Field Values
Method Detail

get

public static BrowserInfo get()
Singleton method to get BrowserInfo object.

Returns:
instance of BrowserInfo object

getCSSClass

public String getCSSClass()
Returns a string representing the browser in use, for use in CSS classnames. The classnames will be space separated abbreviations, optionally with a version appended. Abbreviations: Firefox: ff Internet Explorer: ie Safari: sa Opera: op Browsers that CSS-wise behave like each other will get the same abbreviation (this usually depends on the rendering engine). This is quite simple at the moment, more heuristics will be added when needed. Examples: Internet Explorer 6: ".v-ie .v-ie6 .v-ie60", Firefox 3.0.4: ".v-ff .v-ff3 .v-ff30", Opera 9.60: ".v-op .v-op9 .v-op960", Opera 10.10: ".v-op .v-op10 .v-op1010"

Returns:

isIE

public boolean isIE()

isFirefox

public boolean isFirefox()

isSafari

public boolean isSafari()

isIE8

public boolean isIE8()

isIE9

public boolean isIE9()

isChrome

public boolean isChrome()

isGecko

public boolean isGecko()

isWebkit

public boolean isWebkit()

getGeckoVersion

public float getGeckoVersion()
Returns the Gecko version if the browser is Gecko based. The Gecko version for Firefox 2 is 1.8 and 1.9 for Firefox 3.

Returns:
The Gecko version or -1 if the browser is not Gecko based

getWebkitVersion

public float getWebkitVersion()
Returns the WebKit version if the browser is WebKit based. The WebKit version returned is the major version e.g., 523.

Returns:
The WebKit version or -1 if the browser is not WebKit based

getIEVersion

public float getIEVersion()

getOperaVersion

public float getOperaVersion()

isOpera

public boolean isOpera()

isOpera10

public boolean isOpera10()

isOpera11

public boolean isOpera11()

getBrowserString

public static String getBrowserString()

getScreenWidth

public int getScreenWidth()

getScreenHeight

public int getScreenHeight()

isTouchDevice

public boolean isTouchDevice()
Returns:
true if the browser runs on a touch based device.

requiresOverflowAutoFix

public boolean requiresOverflowAutoFix()
Indicates whether the browser might require juggling to properly update sizes inside elements with overflow: auto.

Returns:
true if the browser requires the workaround, otherwise false

isIOS

public boolean isIOS()
Checks if the browser is run on iOS

Returns:
true if the browser is run on iOS, false otherwise

isAndroid

public boolean isAndroid()
Checks if the browser is run on Android

Returns:
true if the browser is run on Android, false otherwise

requiresTouchScrollDelegate

public boolean requiresTouchScrollDelegate()
Checks if the browser is capable of handling scrolling natively or if a touch scroll helper is needed for scrolling.

Returns:
true if browser needs a touch scroll helper, false if the browser can handle scrolling natively

isAndroidWithBrokenScrollTop

public boolean isAndroidWithBrokenScrollTop()
Tests if this is an Android devices with a broken scrollTop implementation

Returns:
true if scrollTop cannot be trusted on this device, false otherwise


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.