Posted on July 16, 2020
JxBrowser 7.9
We are glad to announce the release of the new JxBrowser 7.9 with a few features and a lot of fixes and improvements!
Disabling PDF Viewer
This version of JxBrowser allows disabling the built-in Chromium PDF Viewer. You can disable PDF Viewer if you would like to download PDF documents instead of displaying them in the PDF Viewer. The following example demonstrates how to do it:
engine.plugins().settings().disablePdfViewer();
Clearing HTTP cache
You can now mark all HTTP cache entries stored in both disk and memory for deletion. The following example demonstrates how to clear all HTTP cache entries and wait until the entries are marked for deletion:
httpCache.clear().join();
Important: The HttpCache.clearDiskCache(Runnable)
method is marked as @deprecated
and will be removed in one of
the next versions. Use the HttpCache.clear()
method instead.
Overscroll history navigation
JxBrowser now allows navigating back/forward with a left/right swipe on devices with the touch screen. By default, the overscroll navigation is disabled. You can enable it as follows:
browser.settings().enableOverscrollHistoryNavigation();
Improvements
- Removed the
about:blank
web page from the list of inspectable pages when navigating to thelocalhost:<port>
DevTools URL. - Removed the minimum size limitation of the
BrowserView
component on macOS and allowed resizing the component to the smallest size possible. - Now, you do not have to close
Engine
in different threads in JavaFX application like it was required before. So, the following approach is not required anymore:private static void close(Engine engine) { if (isMac()) { // On macOS the engine must be closed in UI thread engine.close(); } else { // On Windows and Linux it must be closed in non-UI thread new Thread(engine::close).start(); } }
Fixed issues
- The
OpenPopupCallback
never called and, as a result, the popup never displayed when clicking a link with therel='noopener noreferrer'
attribute. - The
java.lang.NullPointerException
error when JavaFXBrowserView
is embedded into thejavafx.scene.control.Alert
dialog. - The Swing Drag & Drop events blocked if a
BrowserView
is hidden before data drop. - The request permission dialog displayed when downloading multiple files.
- The Chromium GPU crash when docking/undocking Swing
BrowserView
in NetBeans 11 window on Linux in the hardware accelerated rendering mode. - Swing
BrowserView
not resized properly when embedded into aJTabbedPane
and the tabbed pane is being resized. - Closing Java window with at least one embedded
BrowserView
leading to unexpected closing of allBrowser
instances in the off-screen rendering mode on Windows. - Freeze when calling
Browser.bitmap()
in the off-screen rendering mode on Linux. - The
BrowserView
component displaying the window caption with the minimize, maximize, and close buttons for a short period of time in the off-screen rendering mode with disabled GPU and enabled transparent backgrounds on Windows. - The web form not being submitted if the file was set using the
InputElement.file(String...)
method. - The DOM
change
event not triggered when setting a file via theInputElement.file(String...)
method. - The
FrameLoadFailed
event with theBLOCKED_BY_RESPONSE
error is not fired when navigation inside anIFRAME
fails because of theX-Frame-Options: sameorigin
HTTP header. - The first loaded web page not rendered on Windows 7 and Windows Server 2008 R2 in the off-screen rendering mode.
- The first loaded web page not rendered in JavaFX
BrowserView
if it becomes visible after the web page has been completely loaded in the correspondingBrowser
instance in the off-screen rendering mode. - The
java.lang.IllegalStateException
error when unfocusing SWTBrowserView
when its correspondingBrowser
instance is already closed. - Thread deadlock when displaying multiple popups in the hardware accelerated rendering mode on Windows.
UrlRequest
not having an ID when it is completed and destroyed.- The
TitleChanged
event not fired when navigating back/forward in the navigation history list. - The single-pixel white line in the fullscreen mode on Linux and the hardware accelerated rendering mode.
- Angular on a web page not receiving the required DOM events when pressing
Enter
on a text field in the off-screen rendering mode. - Broken JavaScript animation because the library does not flush HTML canvas in the off-screen rendering mode with enabled transparent background on Windows.
- Touchpad click causing
Engine
to crash on macOS when attached to a remote debugging URL. - Tooltips not displayed in the hardware accelerated rendering mode on Windows.
- The
IllegalStateException
error when disposing SWTBrowserView
asynchronously. - The
IllegalStateException
error when pressingCmd+Q
on macOS when mouse pointer is over JavaFXBrowserView
. - Thread deadlock when closing
Browser
during disposal of another SWT component. - The
Command
key not being passed to a web page on macOS with JavaFXBrowserView
.
Download JxBrowser 7.9
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 @JxBrowserTeam to get notified of the library updates.
Subscribe to our RSS feed to get instant updates on new releases.