
Introduction

BrowserHawk 14 is here! This major upgrade is our most extensive yet. It includes powerful new detection capabilities, major enhancements, and important fixes.
Whether you are new to BrowserHawk or running an older version, BrowserHawk 14 is a must-have.
BrowserHawk 14.0 includes the following new features, improvements, and fixes:

New:
- Support for IE 10 preview builds
- Support for Firefox 7
- Support for OS X Lion
- Support for Flash 11
- Detection of Windows 8
- Support for the Fluid browser: The "Fluid" browser is now detected. By design, BrowserHawk returns this as Safari 5.x for the browser and version properties, and "Fluid" for the ContainerBrowser property, along with its version info in the ContainerVersion properties.
- Expanded mobile device detection: Support for several additional mobile devices was added.
- Mobile device type detection: The new DeviceType property (string) returns "Handheld" or "Tablet" for mobile devices, accordingly.
- OS bit size detection: The new OSBitSize* property (integer) returns the bit size of the underlying operating system, such as 32 or 64 bits.
- Browser bit size detection: The new BrowserBitSize* property (integer) returns the bit size of the browser, such as 32 or 64 bits. Use this to determine whether a user on a 64 bit operating system is running a 32 bit versus 64 bit version of their browser.
- Detection of blocked Flash: The new Plugin_FlashBlocked property returns True if Flash is installed, but is being blocked from running by software on the user's machine, such as a browser plugin. Note that not all blockers are detectable.
- Flash timeout setting: The new FlashTimeout property (integer) provides the flexibility to control the amount of time BH waits before determining that Flash is blocked.
- New Java check type setting: The new JavaCheckType property (integer) can be used to delay loading of the applet used by BH to test Java. This applies to the JavaVendor, JavaVersion, Plugin_Javaver, OSName, OSVersion, OSDetails, and OSArch properties. This setting may be useful for some edge cases where Java settings for a particular user are not being detected. It is also useful if you are using a custom PageMessage for your "Please wait..." temporary page when also testing these Java based properties, allowing your PageMessage to show much more quickly. Note that this is an advanced setting. In general, JavaCheckType should be kept at its default of 0 unless you have a specific reason to change it.
- Detection of WebKit: The new WebKit property (boolean) returns True if the browser is based on the WebKit layout engine, False otherwise.
- Detection of WebKit version: The new WebKitVersion property (string) returns the version number of the WebKit layout engine, for WebKit based browsers. The result is returned in various formats such as "532.9", "533.17.9" and "534.1+".
- DocType setting: The new DocTypeTag property (string) can be used to set the "<!DOCTYPE>" tag that BrowserHawk writes out in the HTML of the temporary page displayed while performing an extended property test. Setting this may be helpful or even mandatory if you are using a PageMessage which includes complex HTML.

Improved:
- OSName property: Major improvements were made to the OSName property. OSName was simplified to return "Windows" for all Windows platforms, and "OS X" for Macs.
- OSVersion property: Major improvements were made to the OSVersion property. This property now returns the version number of the OS, not just for browsers but also for mobile devices when available (such as with iOS and Andriod devices). Examples include "6.1" for Windows 7, "10.7.1" for OS X Lion, and "4.2" for an iOS device running that version. See the documentation for more information.
- OSDetails property: Major improvements were made to the OSDetails property. OSDetails now provides the detailed information which includes the OS name and its version, such as "Windows 8", "OS X Lion", and "iOS 4.2".
- OSName and OSVersion as "basic" properties: OSName and OSVersion are now available as basic properties and do not require an extended property test. This provides for instant testing of these properties. The extended property versions of these properties are still available, which are useful for edge cases such as older versions of Opera or to get the full version info (x.y.z instead of x.y) for OS X users running Firefox. Unless these edge cases are critical, we highly recommend switching to the basic version of these properties. BH for ActiveX users - simply do not pass in OSName or OSVersion to SetExtProperties. BH for .NET/Java users - simply do not pass in OSName or OSVersion to AddProperties, and instead get the results from the BrowserObj class instead of ExtendedBrowserObj.
- Connection speed testing: The Progressive connection speed test was enhanced to more accurately measure very fast connections, such as those in the 5-35+ Mbps range.
- Expanded RET engine: Rules Enforcement Technology (RET) now supports setting Progressive connection speed options, as well as several additional options, directly in the rules XML file.
- RET output formatting: RET now supports a "format" function which provides more user-friendly output of BH property values. For example, use: <message>Your speed is %format(ConnectionSpeed)%</message> to have BH output "Your speed is 5.62 Mbps" instead of "Your speed is 5621213".
- Enhanced blocked popup detection: The PopupsBlocked property is now faster and works with Chrome. Previously Chrome would always return that popups were not blocked, regardless of the setting.
- Enhanced Java detection: Extensive enhancements were made to the Java detection to make the tests faster and more accurate. This also improves detection of Java under OS X Lion. These improvements apply to JavaVendor, JavaVersion, Plugin_JavaVer, and the extended property versions of OSName, OSVersion, OSDetails and OSArch.
- Enhanced Plugin_JavaVer results: The Plugin_JavaVer property with IE now returns up to 1.7 (depending on what version is installed) instead of only up to 1.4+ as before. Further, on non-IE browsers, this property now can return the full version of the Java plug-in, instead of just x.y+.
- Enhanced firewall and open ports testing: The Firewall, OpenPorts, ImagesEnabled, and SSLEnabled properties were improved to run faster and provider greater accuracy.
- Expanded BRWS: The BrowserHawk Reports Web Service (BRWS) was expanded to support logging of the new properties: DeviceType, OSBitSize, BrowserBitSize, WebKit, WebkitVersion, and Plugin_FlashBlocked.
- Updated BrowserHawk Editor: Minor updates and enhancements were made to the BrowserHawk Editor.
- Expanded samples: The BrowserHawk samples were updated to demonstrate the new properties.

Fixed:
- Improved Java detection to better support detection under OS X Lion. Applies to BH for ActiveX, .NET and Java.
- Resolved a bug that could cause an unhandled exception in IIS. Applies to BH for ActiveX only.
- Resolved an issue that caused the blocked popup detection to not work when setting the optional popupFileName parameter. Applies to BH for ActiveX only.
- Resolved an issue that caused the Broadband property to always return False, regardless of the connection type. This occurred only on IIS 7. Applies to BH for ActiveX only.
- Miscellaneous bug fixes. Applies to BH for ActiveX, .NET, and Java.
* = Feature requires Enterprise Edition

How to Upgrade | Pricing and ordering

|