WebKit 上周动态
Battery Status API 和表单更新
上周,WebKit 仓库中落地了 751 项变更。亮点包括 Battery Status API 的落地和对 W3C 版本 Fullscreen API 的支持。
所有有符号和浮点 Typed Arrays 现在将在 Web 检查器中显示为 普通数组。获取堆快照 现在应该快 12%,并且正在 准备 支持 脚本面板中的代码片段。涵盖此工作的元 bug 可在 WebKit 的 Bugzilla 上找到。
CSS 解析现在遵循规范,当它 意外遇到 文件末尾时,以及在列组上设置的宽度对于固定布局表格 将不再影响列的宽度。Flexible Box Layout 实现中的三个问题 已被 修复,“em” 单位 将正确使用 即使 :first-line 伪元素改变大小;并且 calc() 现在可以混合使用百分比和绝对值,用于 渐变 和 字体。
HTML5 的 meter 和 progress 元素 不再与表单关联,不在文档中的单选按钮在与表单关联时 现在会分组,并且标签的 form 属性 更新了其行为。output 元素现在可以被标签关联,而隐藏的输入字段 已失去此能力。
三星已为 Battery Status API 落地了一项实现,将在 EFL 端口上启用。至于语音识别,WebCore 控制器和客户端的存根代码 已落地,以及该 API 的 SpeechRecognitionEvent 部分。MediaStream 的 PeerConnection 实现 已被弃用,因为它正转向 JSEP API。同时, Nikolas Zimmermann 一直在忙着 实现 对 SVG 的 适当的 animVal 支持。
除了支持 Mozilla 的 FullScreen API 外,WebKit 现在也支持 那个非常相似的 W3C Fullscreen API。主要区别在于方法的首字母大小写和退出全屏时的行为。
上周发生的其他变化:
- HTML5 的 summary 和 detail 元素已为 WebKit 的 EFL 端口 启用。
- Page Visibility API 和 Web Timing API 已为 BlackBerry 端口启用。
- Dave Hyatt 已开始 将多列布局实现迁移到基于 CSS Regions 的实现。
- Apple 在 JavaScriptCore 上为 IndexedDB 添加了实现存根代码,修复了构建问题。
- WebKit 的提交队列现在将 加速处理 那些已通过 EWS 测试机器人的补丁。
- 在 Chromium 上,blur CSS 滤镜的性能 已提高了 2-2.5 倍。
- Andreas 在查看 HTML5 规范时,又减少了内存使用 800 kB。
- 对 innerText, outerText, innerHTML 和 outerHTML 进行了性能改进。
- 视觉单词移动 现在可以由 ICU 支持,提供了更简单的实现。
- 三项 可访问性 改进 已落地,其中一项修复了 HTML5 的 footer 元素。