原創|產品更新|編輯:李顯亮|2020-08-21 10:18:03.297|閱讀 439 次
概述:JAVA應用程序瀏覽器集成控件JxBrowser更新至7.10,優化屏幕外渲染模式,優化Chromium功能,擴展獲取網頁上當前聚焦的HTML元素的方法,拼寫檢查功能已恢復,同時修復多項Bug,歡迎下載體驗。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
JxBrowser是將基于Chromium的瀏覽器與Java應用程序集成,以處理和顯示HTML5、CSS3、JavaScript、Flash等。
近日,JxBrowser v7.10發布啦!優化屏幕外渲染模式,優化Chromium功能,擴展獲取網頁上當前聚焦的HTML元素的方法,拼寫檢查功能已恢復,同時修復多項Bug。以下是具體的更新內容。
屏幕外渲染模式已重新實現,以提高其在所有受支持的平臺和UI工具包上的渲染性能。以下是在不同平臺上以每秒幀數(FPS)的HTML5視頻進行渲染性能測試的結果:
Windows
macOS
Linux
Chromium的功能,如谷歌云端通訊,翻譯排序器,擴展更新,安全瀏覽,拼寫檢查,Widevine的等發出請求外部谷歌的網絡服務,如//ssl.gstatic.com, //clients4.google.com, etc.
當無法訪問Web服務或您不希望這些額外流量時,可以使用以下API:
Engine engine = Engine.newInstance( EngineOptions.newBuilder(renderingMode) .disableChromiumTraffic() .build());
此選項僅允許禁用無法通過JxBrowser API訪問的Chromium功能。例如,可以通過JxBrowser API訪問SpellChecker和Widevine功能,因此該選項不會禁用由這些功能引起的流量。
DOM API已使用Document.focusedElement()允許獲取網頁上當前聚焦的HTML元素的方法進行了擴展:
document.focusedElement().ifPresent(element -> { ... });
在以前的版本中,調用同步回調時,可能會更改IPC消息順序。例如,通過該Browser.dispatch()方法調度鍵盤事件可能會導致網頁文本字段中字母隨機混合的問題。
在此版本中,我們改進了內部IPC邏輯以消除此類情況。這項改進對如何處理同步回調中的代碼提出了一項重要要求。如果您執行一些邏輯,從而在同步回調內的單獨線程中對庫進行同步調用,并阻塞等待該邏輯執行之前的回調,則可能會出現死鎖:
// Register a synchronous callback. browser.set(SomeSyncCallback.class, params -> { // Invoke some logic in a separate thread and block the current // thread execution until the logic has been executed. invokeInSeparateThreadAndWait(() -> { // Invoke a synchronous method. browser.someSyncMethod(); // <-- Deadlock: this method will never return. }); return Response.proceed(); });
要擺脫僵局,請改用以下方法:
// Register a synchronous callback. browser.set(SomeSyncCallback.class, params -> { // Invoke a synchronous method. browser.someSyncMethod(); return Response.proceed(); });
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn