每日进步——Firefox近期动态:第192期
Mike Conley 2025年11月24日
亮点
- 折叠的标签组悬停预览功能已在Firefox 145中上线!
- Nicolas Chevobbe在规则视图中添加了折叠未引用的CSS变量声明的功能(#1719461)
- Alexandre Poirot [:ochameau]在调试器中添加了启用自动美化打印的设置(#1994128)
- 改进了大量使用CSS变量页面的性能
- Jared H在应用菜单中添加了“复制此配置文件”按钮(Bug 1992199)
Firefox团队之友
已解决的Bug(排除员工)
- Khalid AlHaddad
- Kyler Riggs [:kylr]
新贡献者(🌟 = 第一个补丁)
- Alex Stout
- Khalid AlHaddad
- Jim Gong
- Mason Abbruzzese
- PhuongNam
- Thomas J Faughnan Jr
- Mingyuan Zhao [:MagentaManifold]
项目更新
附加组件 / 网络扩展
WebExtensions框架
- 修复了一个问题,该问题阻止了从附加到沙盒子框架的内容脚本中调用
动态导入来解析moz-extensionES模块。——Bug 1988419- 感谢Spidermonkey团队的Yoshi Cheng-Hao Huang调查并修复了此影响内容脚本使用动态导入的问题。
附加组件管理器与 about:addons
- 作为改进扩展按钮面板空状态工作的后续,从Nightly 146开始,Firefox桌面版将在扩展按钮面板和about:addons中显示消息栏通知,以突出显示当Firefox在“故障排除模式”(也称为安全模式)下运行且所有附加组件预期将被禁用时的情况,并附带一个“了解更多”链接,指向详细介绍故障排除模式的SUMO页面。——Bug 1992983 / Bug 1994074 / Bug 1727828
开发者工具
- gopi 使规则视图即使在值无效时也能格式化
grid-template-areas(#1940198) - Emilio Cobos Álvarez 修复了在影子DOM中编辑构造规则会导致其消失的问题 (#1986702)
- Nicolas Chevobbe 修复了一个Bug,该Bug会在共享样式表上由
:host规则定义的变量的var()工具提示中渲染错误数据 (#1995943) - Julian Descottes 改进了在选中影子DOM元素时的检查器重新加载时间 (#1986704)
- Hubert Boma Manilla 修复了在调试器中暂停时可能出现重复内联预览的问题 (#1994114)
- Nicolas Chevobbe [:nchevobbe] 在设置面板中暴露了
devtools.inspector.showAllAnonymousContent选项 (#1995333)
WebDriver
- Khalid 在WebDriver经典Python客户端中添加了一个专用的
switch_to_parent_frame方法,并将现有的switch_frame方法重命名为switch_to_frame,以与WebDriver规范保持一致。 - Julian 更新了
network.getData命令,使其能返回使用data:方案的请求的响应体。 - Julian 修复了一个Bug,该Bug会导致不同的请求重用相同的ID,当使用针对特定请求的命令(例如
network.provideResponse,network.getData等)时,可能导致意外行为。 - Sasha 更新了
emulation.setLocaleOverride和emulation.setTimezoneOverride命令的重置行为,以符合规范的更改。通过此次更新,当调用这些命令来重置例如某个浏览上下文的覆盖时,仅会重置此覆盖,而如果存在与此浏览上下文相关的用户上下文设置的覆盖,则将应用该覆盖。
代码检查、文档与工作流程
ESLint
- 我们正在努力在整个代码库中推广可自动修复的JSDoc规则。目的是减少在推广过程中被禁用的规则数量,并使在新领域启用JSDoc规则变得更简单。
jsdoc/no-bad-blocks现已启用。- JSDoc注释要求在开头有两个星号,如果看起来应该是JSDoc注释(例如带有@符号)但只有一个星号,则会引发问题。
jsdoc/multiline-blocks也已启用。- 这主要用于多行注释的布局一致性,以便注释文本既不从第一行开始,也不在最后一行结束。这也有助于自动修复其他规则。
StyleLint
- 启用了更多规则——背景颜色令牌、空间令牌、文本颜色令牌、盒阴影令牌。
- 添加了一条新规则,以防止在
toolkit/中使用browser/的css文件。
迁移改进
- 我们现在默认禁用了IE迁移器,因为IE(独立浏览器,非兼容模式)已于2022年停止获得微软的支持。我们将让此功能保留至发布版本,然后开始完全移除其支持。
- 为了帮助用户将数据从Windows 10迁移出来,我们恢复了备份工作,并已落地了多项修复:
- 恢复操作现在会保留用户的默认配置文件(如果它在备份前是默认的),并且之前的配置文件会被重命名为
old-[配置文件名称]以清晰明了。这可以防止恢复后出现意外的启动配置文件,并使在配置文件管理器中的回滚操作显而易见。 - 恢复文件选择器(恢复模态框和about:welcome恢复)现在会在检测到的备份位置打开,减少了导航摩擦和错误。
- about:preferences中的主要CTA标签在启用后立即正确更新(“管理备份” → “关闭备份”),使UI状态与功能保持一致。
- “立即备份”按钮在启用备份之前被隐藏,避免了一个无效操作,并引导用户完成正确的设置流程。
- 为fxbackup添加了企业策略首选项,使管理员能够在Windows/macOS/Linux上为受管理的用户强制执行/锁定备份的可用性和行为。
- 更新了about:preferences中的错误和警告横幅以符合规范,以获得更清晰的状态和故障消息。
- 备份HTML存档支持链接现在指向正确的文档。
- 复制更新明确了备份中包含哪些Cookie数据,改善了用户期望和隐私透明度。
- 恢复操作现在会保留用户的默认配置文件(如果它在备份前是默认的),并且之前的配置文件会被重命名为
新标签页
- 我们于10月20日成功将新标签页版本145.1.20251009.134757训练跳跃至发布渠道的100%!
- 新标签页默认设置与新鲜度:当
browser.newtabpage.activity-stream.discoverystream.sections.enabled更改时,DiscoveryStream缓存现在会过期,因此切换布局可以立即更新内容。首次运行时显示的占位符少得多,改善了感知加载速度。通过基于新标签页附加组件版本对about:home启动缓存进行键控,提高了启动正确性。 - 无障碍访问、键盘和RTL:修复了设置跳转到天气前面的混乱焦点顺序。对于Windows高对比度模式,故事卡片在悬停时不再消失,并获得了更清晰的视觉效果。RTL语言环境现在在故事卡片之间获得了直观的反向箭头键导航。
- 天气选择加入和覆盖范围:选择加入流程现在会显示“启用当前位置”,并添加了“检测我的位置”上下文菜单操作;可用性扩展到更多区域,减少了设置摩擦并增加了覆盖范围。
- 视觉优化与正确性:标准化的不透明度加上悬停/模糊效果使故事卡片感觉更灵敏;确保搜索栏在滚动时保持垂直居中。改进的卡片现在可以显示更长的发布者名称,而不影响小卡片。
- 壁纸和语言修复:缺失的自定义壁纸缩略图现在可靠加载,如果远程设置壁纸失败,会显示友好的错误状态。语言切换器不再列出附加组件区域设置,恢复了预期的语言选择。
性能工具(即 Firefox Profiler)
- 标记工具提示现在有一个“过滤”按钮,可以快速将标记图表过滤到类似的标记:
截图中的配置文件链接:https://share.firefox.dev/42kDTuf(过滤后:https://share.firefox.dev/4gQHPsx) 这是一个xpcshell测试作业的资源使用情况配置文件。要查看它们,请在treeherder中选择一个测试作业并按‘g’。
配置文件管理
- 配置文件 功能正在向144版本中的所有非win10用户推出,目前看来状况良好。
- Niklas 重构了BackupService以支持使用它来复制配置文件(Bug 1992203)。
- Jared H 在Windows上添加了每个配置文件的桌面快捷方式(Bug 1958955),可通过about:editprofile页面上的切换开关使用。
- Dave 修复了调试版本中的间歇性测试崩溃(Bug 1994849),该崩溃是由删除目录和尝试打开锁文件之间的竞争引起的。
nsProfileLock::LockWithFcntl现在在这种情况下返回警告而不是错误。
搜索与导航
新功能
- 我们正在努力在地址栏中启用更好的搜索建议(博客文章链接)。
- Mandy 已将Perplexity作为新搜索引擎推广给所有用户。
- Google Lens 正在向144版本中的用户推广,并增加了产品内演示。
地址栏
- Daisuke 为航班状态建议实现了原型 @ 1990951 + 1994317。
- Dale 一直在努力启用统一信任面板 @ 1992940 + 1979713。
- Dale 引入了Option + Up / Down作为打开统一搜索面板的键盘快捷键 @ 1962200。
- Moritz 移除了“为此搜索添加关键字”的代码,因为这是已弃用的功能 @ 1995002。
搜索
- Mandy 和 Drew 一直在努力发布视觉搜索 + 消息传递 @ 1995645。
Storybook / 可复用组件 / Acorn设计系统
<moz-message-bar>现在支持带有slot=”message”元素的任意内容。- 理想情况下,这仍然应该是简短的内容,比如一条消息,而不是输入框等。
- 示例:
<moz-message-bar><span slot=”message” data-l10n-id=”my-message”><a data-l10n-name=”link”></a></span></moz-message-bar> - 注意:如果你使用Lit,设置在Fluent元素(
data-l10n-name)上的@click监听器等将不起作用,你需要将其附加到data-l10n-id元素或另一个父元素上。