Posted on
JxBrowser 7.2
We are glad to announce the release of the new JxBrowser 7.2!
You can always tell a pro by the attention paid to the details. This version of JxBrowser allows you go into very subtleties of your application’s appearance and security, and make everything look and behave just as you planned.
Custom error page
We extended the API with two new callbacks that allow overriding the standard Chromium error pages for HTTP and network errors. The following simple example demonstrates how to do it:
navigation.set(ShowHttpErrorPageCallback.class, params ->
ShowHttpErrorPageCallback.Response.show(
"<html><body>HTTP error</body></html>"));
navigation.set(ShowNetErrorPageCallback.class, params ->
ShowNetErrorPageCallback.Response.show(
"<html><body>Network error</body></html>"));
Favicon
Now, you can access the favicon of the currently loaded web page via the Browser.favicon() method.
Transparent background
The background of the web pages is opaque by default. To enable transparent background on the web pages loaded in
a Browser instance please use the following setting:
browser.settings().enableTransparentBackground();
This functionality works only in the off-screen rendering mode on Windows and Linux. On macOS it works in both rendering modes.
Treat insecure origin as secure
Now, you can configure the list of insecure origins that must be treated as secure using the following API:
Engine engine = Engine.newInstance(
EngineOptions.newBuilder(renderingMode)
.treatInsecureOriginAsSecure(
"http://foo.com", "*.foo.*.bar.com")
.build());
It has the same effect as adding the --unsafely-treat-insecure-origin-as-secure Chromium switch.
Frame initiated download
Access an instance of the Frame initiated download using the following API:
downloads.set(StartDownloadCallback.class, (params, tell) -> {
params.frame().ifPresent(frame -> {});
...
});
Node’s XPath
The API has been extended with the Node.xPath() method that allows getting a string representing XPath to the node.
Disallow JavaScript to access cookies
Now you can prevent JavaScript from accessing the document.cookies property using the following code:
browser.settings().disallowJavaScriptAccessCookies();
Improvements
- Javadoc for the Swing and JavaFX artifacts is now available in the Maven repository.
- Added ability to programmatically request focus in both Swing and JavaFX
BrowserViewvia thebrowserView.requestFocus()method. - All the Chromium binaries on Windows 32- and 64-bit are now signed with a valid TeamDev signature.
- Signature of the internal 7zip executables used to extract Chromium binaries on Windows is updated.
Fixed issues
- Crash when clearing HTTP disk cache when the Incognito mode is enabled.
- The
java.lang.IllegalStateExceptionerror when creating aBrowserinstance. - Empty
UrlRequestinBeforeSendUploadDataCallback.Params. - The
java.lang.NullPointerExceptionerror and freeze when Chromium process is terminated during a blocking PRC call. - The
java.lang.NullPointerExceptionerror when JavaFXBrowserViewis created but not displayed. - The
java.lang.IllegalArgumentException: Cannot find the /7.1/chromium-win64.7z resource in JARserror when onlyjxbrowser-win32.jaris included into the classpath. - Starting empty popups which have not been closed after download.
- Ignored mouse clicks when
BrowserViewis inside a JavaFXTab.
Download JxBrowser 7.2
Please share your email with us, and we'll send you download instructions.
We were unable to send the email. Please use the direct link to download JxBrowser.
If you are a registered customer you don't need to do anything to use this update.
If you would like to evaluate the product, you need an evaluation license.
Follow @JxBrowser to get notified of the library updates.
Subscribe to our RSS feed to get instant updates on new releases.
Subscribe to get notifications about the latest releases.