Posted on August 9, 2016
In this minor update we fixed several critical issues reported by our customers and improved existing functionality.
- Felix and Eclipse OSGi. JxBrowser has been adopted and tested in Felix OSGi environment. Now JxBrowser supports two OSGi implementations: Eclipse and Felix. Eclipse OSGi environment support has been improved as well. Now, each JxBrowser JAR file represents an OSGi bundle. To use JxBrowser in your OSGi application, you just need to include JxBrowser JAR files/bundles into your OSGi application.
- Spell Checker API. By default Chromium engine does spell checking only for the text in the modified paragraph. In this version we introduced functionality that forces Chromium engine to spell check the whole text upon every change including text in TinyMCE editor.
- Printing API. Support of page ranges when printing web page as PDF document has been implemented.
- Deadlock in multi-threaded environment on Windows XP and OS X. In multi-threaded environment, when
Browserinstances are created and destroyed in different threads at the same time, sometimes thread deadlock happens. We reproduced the issue, figured out what causes it and fixed it in this minor update. So, stability of the library in multi-threaded environment on Windows and OS X was significantly improved.
- Deadlock during Drag and Drop on Windows. The issue happens when dragging something in Java application and displaying
BrowserViewwithout releasing the drag. It was simple thread deadlock that is now fixed in JxBrowser code.
- Printing in PDF Viewer. An issue when empty page was printed when printing from PDF viewer is fixed.
- Zoom in/out in PDF Viewer. An issue when the
Browser.zoomOut()methods do nothing when PDF document is displayed in PDF Viewer is fixed.
- Failed to load PDF document in PDF Viewer. If we load the http://www.orimi.com/pdf-test.pdf web page, click the link in the document, wait until web page is loaded completely, and then press backspace, we will see the “Failed to load PDF document” error message. The issue is fixed in this update.
- Startup error on OS X with Portuguese or Chinese locale. When OS X language is set to Portuguese or Chinese, JxBrowser fails to start because Chromium cannot find the appropriate language pack. The reason of this issue is that Java detects the language as “PT” or “ZH”, but Chromium does not have appropriate packs for these languages. It only has the “PT_BR”, “PT_PT”, “ZH_CH”, and “ZH_TW” packs. So, the language identifier that is received from Java default locale must be combined with country identifier in case of Portuguese and Chinese language. We made this change to improve the functionality in JxBrowser that detects current language and country to get rid of such issues on OS X.
- Wrong Redo shortcut on OS X. In previous JxBrowser versions the Redo shortcut (Cmd+Y) does not match the native OS X combination (Cmd+Shift+Z). Starting from JxBrowser 6.6.1 the Redo shortcut on OS X is correct — Cmd+Shift+Z.
- Render Process events. It turns out that the
RenderListener.onRenderGone()event is fired only when lightweight rendering mode is enabled. In heavyweight rendering mode there was no way to find out when render process is unexpectedly terminated. Now the event is fired in both rendering modes: heavyweight and lightweight.