当前位置:   article > 正文

electron增加导航按钮_Electron发布6.0 Released版本

allowrendererprocessreuse作用

简介

在第5版发布仅3个月后,流行的基于JavaScript的跨平台桌面应用程序构建平台达到了第6版,并使用了Chromium 76,Node 12.4和V8 7.6。

5a52413c954197f778ef507c1e879a1c.png

6.0.0发行说明

突破性变化

  • 升级到Chromium 76.0.3809.88,Node.js 12.4.0和V87.6.303.22
  • 修复了net模块头和Node.js http.IncomingMessage头之间的差异。#17517
  • 做ShowItemInFolder异步没有返回值。#17121
  • 使用新功能创建应用程序日志目录选择app.setAppLogsPath。#17841
  • 从WebContents模块中删除了API hasServiceWorker和unregisterServiceWorkerAPI。#16717

承诺

Electron 6.0继续在5.0开始的项目,以改善Promise的支持。

这些函数现在返回Promises并仍然支持旧的基于回调的调用:

  • contentTracing.getCategories() #16583
  • contentTracing.getCategories() #16583
  • contentTracing.getTraceBufferUsage() #16600
  • contents.executeJavaScript() #17312
  • cookies.flushStore() #16464
  • cookies.get() #16464
  • cookies.remove() #16464
  • cookies.set() #16464
  • dialog.showCertificateTrustDialog() #17181
  • inAppPurchase.getProducts() #17355
  • inAppPurchase.purchaseProduct()#17355
  • netLog.stopLogging() #16862
  • session.clearAuthCache() #17259
  • session.clearCache() #17185
  • session.clearHostResolverCache() #17229
  • session.clearStorageData() #17249
  • session.getBlobData() #17303
  • session.getCacheSize() #17185
  • session.resolveProxy() #17222
  • session.setProxy() #17222
  • webContents.hasServiceWorker() #16535
  • webContents.printToPDF() #16795
  • webContents.savePage() #16742
  • webFrame.executeJavaScript() #17312
  • webFrame.executeJavaScriptInIsolatedWorld() #17312
  • webviewTag.executeJavaScript() #17312

这些函数现在有两种形式,同步和基于Promise的异步:

  • dialog.showMessageBox() #17298
  • dialog.showOpenDialog() #16973
  • dialog.showSaveDialog() #17054

这些函数现在返回Promises:

  • app.dock.show() #16904

特征

  • 添加chrome.runtime.getManifest了Chrome扩展程序的API。#16891
  • 添加.getWebContentsId(),不依赖于remote模块。#17407
  • 添加了all_frames对Chrome扩展内容脚本的支持。#17258
  • 添加disableHtmlFullscreenWindowResize选项以webPreferences允许在进入HTML5全屏时阻止窗口调整大小。#17203
  • 添加了excludedFromShownWindowsMenu属性以允许从Windows菜单中排除窗口。#17404
  • 添加process.getSystemVersion(),可在沙盒渲染器中使用,并在macOS上返回实际的操作系统版本而不是内核版本。#16599
  • 添加process.versions.electron以在分叉过程中获取电子版本。#16450
  • 添加了renderer-process-crashed事件app,当任何渲染器进程崩溃时会发出该事件。#17315
  • 新增requestingUrl和isMainFrame属性的许可要求和权限检查处理细节的对象,这样应用程序可以检查请求的框架,而不是根帧的原点。#18772
  • 添加systemPreferences.getAnimationSettings()了Chromium提供的返回系统动画设置。#17382
  • 添加tray.getTitle()以允许用户查看macOS上状态栏图标旁边的标题集。#17385
  • 添加了一个新的Event属性triggeredByAccelerator,该属性在自定义click事件中回调MenuItems。#16954
  • 添加了功能禁用获取缩略图 desktopCapturer.getSources()。#14906
  • 为使用remote模块时引发的错误添加了其他错误信息。#17851
  • 添加了一个选项,以便MenuItems在macOS 上启用时可选visible: false。#16853
  • 在Linux中添加了文件选择器的文件预览。#16447
  • 为BrowserViews in 添加了灵活的自动调整大小选项BrowserWindow。#16184
  • 为macOS添加了原生Touch ID身份验证支持。#16707
  • 添加app.allowRendererProcessReuse了允许应用禁用网站实例覆盖的新属性Electron已修补到Chromium。这可用于防止Electron当前执行的自动渲染器进程重新启动。#18554
  • 添加了新app.userAgentFallback属性以允许全局设置应用程序的useragent。#18473
  • 增加了新的monochrome,internal,acceleratorEnabled,colorDepth和depthPerComponent属性显示的API结构。#16870
  • 添加了新的inspectSharedWorker()API,以便为共享工作者打开devtools。#16615
  • 添加更安全nativeImage.createFromBitmap(),不解码PNG / JPEG。#17337
  • 添加了对Scroll Lock加速器的支持。#16873
  • 为Chrome扩展程序内容脚本添加了世界隔离。#17032
  • 允许在app.setUserTasks()/中设置工作目录app.setJumpList()。#18291
  • 已启用标记的NodeIntegrationInSubFrames选项用法webview。#17226
  • 暴露colorSpace在Display物体上。#17405
  • 功能:为Windows和macOS添加本机表情符号和颜色选择器方法。#17359
  • BrowserWindow.moveTop()在Linux / X11上实现。#16629
  • 将webFrame自定义方案API移至浏览器进程下protocol。#16416
  • 进程现在在沙盒渲染器中发出“已加载”事件。#17680

修复

  • systemPreferences.isDarkMode()现在正确检测macOS Catalina上的暗模式。#18958
  • 'page-title-updated'在webContents文档中添加了缺少的事件。explicitSet发出时也固定转发参数BrowserWindow。#18319
  • 向后移植了一个修复了http / 2内存泄漏的Node.js 补丁:#18882
  • 更正了showSaveDialogWindows平台上取消值的撤消。#18383
  • 更正了showOpenDialogWindows上的布尔取消值。#18509
  • DevTools Extensions现在正确加载。#17614
  • 在macOS上启用自动填充弹出窗口。#16308
  • 确保webContents.hasServiceWorker()拒绝无效网址的错误。#16571
  • 确保使用--inspect-brk参数不会导致崩溃。#19332
  • 修复了未在沙盒渲染器中加载的Chrome扩展程序内容脚本。#16218
  • 修复了启用时无法在脚本化弹出窗口中工作的问题nativeWindowOpen。#19218
  • 修复了app.getAppPath()在electron app没有package.json或者运行的情况下运行返回default-app路径的问题electron app/index.js。现在返回包含执行文件的目录。#18888
  • 修复beginFrameSubscription了HiDPI显示屏上返回的模糊图像。#17444
  • 修复了fs.promises不支持ASAR路径的API。#18114
  • 修复了new-window没有从target="_blank"沙盒中的链接发出的事件 #18556
  • 修复了webContents.print()在所有情况下都没有正确返回布尔值的回调。#18803
  • 修复webFrame.setSpellCheckProvider内存泄漏。#16448
  • 修复了window.open()未在沙盒中设置null时未返回的问题#18556allowpopupswebview
  • window.opener在跨源导航后修复了null。#18624
  • 修复了崩溃问题systemPreferences.getAccentColor()。#18195
  • 修复了在Windows上无法获取desktopCapturer中的设备时发生崩溃的问题。#17973
  • 修复了没有传递BrowserWindow时对话框崩溃的问题。#18381
  • 修复了退出时可能发生的崩溃。#17879
  • 修复了Kerberos SPN生成中的回归问题。在M69升级中,该enable_negotiate_port选项的默认值无意中从false更改为true; 这恢复了以前的行为并与Chromium保持一致。#18285
  • 修复了不推荐使用的dialog.*方法中意外破坏API更改的问题。#18724
  • 修复了Windows上调用.show()BrowserWindow没有聚焦窗口的问题。#18081
  • 修复了阻止Flash插件在Linux上加载的问题。#17823
  • 修复了tray.destroy在某些Linux发行版上无法正常工作的问题。#18218
  • 修复了无框窗口最大化时无法显示自动隐藏任务栏的问题。#18373
  • 修复了在Windows 7中自动关闭第一个通知时,具有相同标记的通知不会多次显示的问题#18740
  • 固定建筑与enable_run_as_node残疾人。#18892
  • 修复了Promise返回的情况,如果在页面加载完成之前触发了虚拟导航loadURL,loadFile则会被拒绝ERR_ABORTED。例如使用history.pushState或设置location.hash。#18143
  • 修复了之后BrowserWindow析构函数崩溃的问题win.webContents.destroy()。#18793
  • 修复了加载某些chrome devtools扩展时可能发生的崩溃问题。#19105
  • 修复了电子从SMB网络共享运行时崩溃的问题。#17909
  • 修复了在display-*事件中创建某些类型的窗口时崩溃的问题。#19022
  • 修复了在连接了检查员的情况下退出Electron时的崩溃问题。#18077
  • 修复了开始时的崩溃问题--disable-gpu。#18904
  • 通过剥离swiftshader库(libEGL.so,libGLESv2.so)修复了电子.zip大小增加Linux上的回归(与Electron 3相比)。#18600
  • 修复了嵌入内容的退出html全屏模式。#18775
  • 修复了不一致的行为,修改缓冲区会改变nativeImage像素,而解码的PNG / JPEG数据是副本。#17843
  • 固定的问题,getEffectiveApperance并且getAppLevelAppearance将返回unknown,而不是正确的值的时候。#18690
  • 修复了require('timers').setTimeout有时在渲染器进程中永远不会触发的问题。#18961
  • 修复了shell.openExternal无法激活macOS上打开的窗口的问题。#18722
  • 修复了沙盒渲染器有时会在预加载脚本之外泄漏全局变量的问题。#17712
  • 修复了某些chrome://*网址无法正确呈现的问题。#18552
  • 修复了node_modules内部ASAR文件的加载。#18192
  • 修复了macOS breakpad符号文件以包含非公共符号。#19155
  • 修复了屏幕外渲染不能与viz compositor一起使用的问题。#17538
  • 修复了desktopCapturer模块中的竞争条件,其中某些源请求永远不会被解析,或者未处理的异常将在主进程中抛出。#18042
  • 修复了竞争条件,其中remote模块有时无法获取远程对象的属性。#17464
  • 修复了在执行全屏或工作区转换时在macOS上发生的随机闪烁。#18885
  • 修复了设置src 太慢的问题。#19190
  • 修复了跨平台的静态打印。#19037
  • 修复了一些chrome扩展通信(MessagePort.postMessage)无法正常工作。#19106
  • 修复了input[type=file]未显示文件对话框的元素。#18341
  • 修复了beginFrameSubscription传递Buffer而不是传递的回调NativeImage。#17548
  • 当用户在其他应用上处于活动状态时,焦点方法不再窃取焦点。#16400
  • 改进了Windows上无框窗口的处理方式。#16596
  • 有与内容脚本注入Chrome扩展.的pattern领域,现在把它作为原料.,而不是一个通配符。#17593
  • 迁移crashReporter以在Windows上使用crashpad。#18766
  • 内部预装脚本
  • 从分发包中删除了无意中包含的mojom.js文件。#18486
  • 从node.lib中删除了错误发布的内部V8符号和CRT方法,导致使用Windows上的动态CRT与Node.js模块发生堆损坏。#18619
  • 删除了不存在的gpu-crashed事件。#17317
  • 拼写检查提供者现在(再次)被称为收缩及其部分。#18538
  • 该prefers-color-schemeCSS媒体查询现在可以正常工作。#19250
  • .executeJavaScript现在永远不会让Promise悬空,未能执行的脚本将被正确拒绝。#18714
  • Uint8Array而Uint16Array现在可以在Chrome扩展正确发送MessagePort的情况。#19252
  • 修复了当nativeWindowOpen被禁用时的popup.location。* setters。#19494
  • 修复了以与某些符号工具不兼容的方式更改Windows符号文件的问题。#19504
  • 修复了有时异步node.js方法(如http,setImmediate和fs)不会在相当长的时间内调用其回调的问题。#19467
  • 在Windows 10上处于黑暗模式时修复了窗口菜单背景颜色。#19505

其他变化

  • 替换powerMonitor querySystemIdleState并querySystemIdleTime使用同步API。#17144
  • 为Arm on Windows构建增加了实验支持。#18625
  • 转换accessibilitySupportEnabled为适当的JS属性app。#17362
  • 转换applicationMenu为app模块上的正确JS属性。#17361
  • 不推荐使用session.clearAuthCache的options参数。#18131
  • default_app中的启用sandbox和禁用remote模块。#17318
  • 启用了devtools和chrome扩展后台脚本宿主渲染器的沙箱。#16864
  • 从electron.zip中删除了Vulkan模拟ICD,仅用于Chromium开发。#18596
  • 从electron.zip中删除了Vulkan验证层DLL,这些DLL仅用于Chromium开发。#18062
  • 使用remote.require沙盒渲染器上下文在内部删除已弃用的模块。remote.require明确使用(除非禁用远程模块)。#15957
  • 删除arm / arm64的本机mksnapshot二进制文件,因为它们不再有效。#17561
  • 删除了强制dialog方法调用remote模块同步返回结果但不阻止主进程的特殊处理。#17412
  • clipboard渲染器中的模块不再依赖remote于Linux 上的模块。#17200
  • 改进了require沙盒渲染器失败时抛出的异常消息。#17413
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/309009
推荐阅读
相关标签
  

闽ICP备14008679号