微软修复 Windows 11/10 深色模式下 Chrome / Edge 浏览器白色闪屏问题

系统 Windows
Chrome 和 Windows 在处理深色主题窗口创建方面尚存在不足。类似的问题也出现在文件资源管理器上,在加载之前会短暂出现白屏。

1 月 8 日消息,长期以来,当用户在开启了深色模式的 Windows 11 或 Windows 10 系统中使用 Chrome 或 Edge 浏览器时,都会在打开新窗口或启动浏览器时遇到恼人的白色闪屏问题。这是因为 Chrome 和 Windows 在处理深色主题窗口创建方面尚存在不足。类似的问题也出现在文件资源管理器上,在加载之前会短暂出现白屏。

不过,这一问题即将得到解决。浏览器研究员 Leo 在 X 发现,微软已经为 Chromium 提交了补丁,旨在消除深色模式下窗口创建时的白屏问题。

据IT之家了解,微软的解决方案是通过一种“隐藏”窗口的方式来规避问题。具体而言,当用户创建新窗口时,Windows 本身会将其设置为白色状态,并一直保持到 Chrome 或 Edge 接管渲染为止。由于 Windows 的桌面窗口管理器 (DWM.exe) 在处理窗口管理时无法遵循深色主题设置,就会造成白闪的出现。

微软的网页团队开发者 Chris Davis 提出了一种解决方法,即在 Chrome 或 Edge 可以显示深色背景之前将窗口“隐藏”起来。虽然这听起来更像是权宜之计而非彻底修复 Windows 11 的 DWM.exe,但目前看来是最佳方案。

Chris Davis 解释道:“当窗口首次创建时,DWM 将为其使用默认的白色背景色。这会导致在深色模式下首次显示窗口时出现白闪。为了避免这种情况,我们在第一次显示窗口之前将其隐藏,并强制绘制预期的背景色,然后再取消隐藏。”

一些 Chromium 代码贡献者对这种方法持保留态度,他们担心在更新窗口为深色背景时,GPU 进程完成页面内容绘制可能出现竞争条件,导致 Chrome 用深色覆盖原始屏幕内容。不过,微软的测试表明这种情况并未发生,因此推出补丁后 Chrome 可能不会遇到此类问题。

Chris Davis 的隐藏窗口方法即将实施,这意味着用户在 Windows 11(以及 Windows 10)上将不再看到启动浏览器或创建新窗口时的白闪问题。相关改动将很快推送至 Chrome 和 Edge 浏览器。

责任编辑:庞桂玉 来源: IT之家
相关推荐

2022-11-08 19:11:27

2022-09-12 23:19:45

Windows 10Windows 11钱包

2015-10-08 11:13:18

Chrome Edge浏览器

2021-09-18 05:36:41

Windows 11操作系统微软

2021-11-22 21:55:24

Windows 11Windows微软

2020-12-14 07:05:03

微软Windows 10Windows

2021-12-02 08:56:11

Windows 11操作系统Edge

2022-08-18 16:54:01

微软Edge浏览器

2021-07-21 07:40:07

Windows 11操作系统微软

2021-08-31 07:31:22

微软Edge浏览器

2023-02-09 11:31:58

Edge浏览器

2022-10-17 08:17:38

微软WindowsEdge

2021-05-24 05:38:04

微软Edge浏览器

2021-04-12 07:11:22

Windows10操作系统微软

2021-07-01 09:20:49

Windows 11应用商店Edge浏览器

2016-08-24 14:12:10

Edge浏览器windows 10微软

2021-04-19 07:00:57

微软Edge浏览器

2022-07-31 21:52:18

Edge浏览器

2021-04-16 07:38:40

微软Edge浏览器

2021-04-06 07:00:48

Windows10操作系统微软
点赞
收藏

51CTO技术栈公众号