Dank Microsofts Umstellung auf Chromium können Benutzer nun sowohl in Google Chrome als auch in Microsoft Edge erweiterte Funktionen nutzen. Die Integration hat zu erheblichen Verbesserungen geführt, darunter flüssigeres Scrollen, optimierte Schriftartenverwaltung und bessere Akkueffizienz speziell für Windows 11. Jetzt richtet Microsoft seine Aufmerksamkeit auf die Verbesserung der Dunkelmodusfunktionen neben dem Desktop Window Manager (DWM.exe).
Ein häufiges Problem bleibt jedoch bestehen: Wenn Benutzer Chrome im Dunkelmodus unter Windows 10 oder Windows 11 verwenden, wird beim Öffnen eines neuen Fensters häufig ein kurzer weißer Blitz angezeigt. Dieses unerwünschte Ereignis weist auf ein Problem hin, bei dem weder der Browser noch das Betriebssystem wissen, wie sie das anfängliche Rendering richtig handhaben sollen, was zu einem unansehnlichen Zwischenbildschirm führt.
Dies ist auch beim Starten von Chrome und Edge unter den dunklen Designeinstellungen des Betriebssystems erkennbar. Obwohl sowohl Google als auch Microsoft zuvor Aspekte der Integration dunkler Designs angesprochen haben, bleibt die Herausforderung insbesondere beim Übergang zwischen Browserfenstern offensichtlich. Ähnliche Flash-Probleme wurden zuvor im Windows-Datei-Explorer festgestellt, diese wurden jedoch im Windows 11 23H2-Update behoben.
Beheben des weißen Blitzes im Chromium-Dunkelmodus
Basierend auf einem kürzlich von Windows Latest analysierten Chromium-Code-Commit scheint das Problem darauf zurückzuführen zu sein, dass Windows die notwendige Handhabung für frisch erstellte Chrome-Fenster fehlt. Beim Öffnen eines neuen Fensters wird in Windows 11 standardmäßig ein weißer Hintergrund angezeigt, der sichtbar bleibt, bis Chrome oder Edge die Kontrolle übernehmen.
In diesem Zusammenhang stellt die Verwaltung neuer Fensteranzeigen ein Problem dar, wenn Windows 11 im Dunkelmodus ausgeführt wird. Dabei übernimmt Windows zunächst die Ladephase, bis die jeweiligen Anwendungen ihre Darstellung eingerichtet haben. Bedauerlicherweise erkennt Windows die Verwaltung des dunklen Designs zu diesem Zeitpunkt nicht effektiv an.
Chris Davis, ein Microsoft-Entwickler, hat einen Workaround vorgestellt, um den weißen Blitz durch die Implementierung einer Tarntechnik abzumildern. Dabei wird das Fenster verborgen, bis Chrome oder Edge einen geeigneten dunklen Hintergrund darstellen können. Obwohl dies eher ein Patch als eine endgültige Lösung für das Problem von DWM.exe ist, scheint es die derzeit praktikabelste Lösung zu sein.
Chris Davis erklärt: „Wenn ein Fenster zum ersten Mal erstellt wird, verwendet DWM standardmäßig eine weiße Hintergrundfarbe für das Fenster. Dies kann zu einem weißen Blitz führen, wenn das Fenster zum ersten Mal im Dunkelmodus angezeigt wird. Um dies zu vermeiden, verhüllen wir das Fenster, bevor wir es zum ersten Mal anzeigen, und erzwingen eine Farbe in der beabsichtigten Hintergrundfarbe, bevor wir die Verhüllung aufheben.“
Eine genauere Untersuchung der Chromium-Commits weist auf Änderungen an hin ui/views/win/hwnd_message_handler.cc
.
Im getarnten Zustand verwendet der Code GDI-Aufrufe, um den Clientbereich mit einer dunklen Farbe zu füllen. Wenn der gewünschte dunkle Farbton erreicht ist, setzt Microsoft auf DWMWA_CLOAK
und FALSE
enthüllt das Fenster mit der erwarteten dunklen Optik statt mit einem abrupten weißen Blitz.
Einige Autoren haben zwar Bedenken hinsichtlich möglicher Race Conditions geäußert – wobei eine GPU Seiteninhalte rendern könnte, während das Fenster auf einen dunklen Hintergrund aktualisiert wird –, doch die Tests von Microsoft haben keine derartigen Probleme aufgedeckt, was auf einen reibungslosen Übergang nach Bereitstellung des Patches schließen lässt.
Mit Blick auf die Zukunft ist es plausibel, dass Google und Microsoft die Art und Weise verfeinern werden, wie Chromium Fenster der obersten Ebene verwaltet. Zukünftige Lösungen könnten die Implementierung von Methoden wie WS_EX_NOREDIRECTIONBITMAP
oder neueren Windows-APIs (z. B. DWM_SYSTEMBACKDROP_TYPE
) beinhalten, um den weißen Blitz vollständig zu verhindern.
Vorerst wird jedoch die von Davis eingeführte Cloaking-Methode übernommen, die den White-Flash-Effekt sowohl unter Windows 10 als auch unter Windows 11 eliminiert. Diese Verbesserungen werden voraussichtlich bald für Chrome- und Edge-Benutzer verfügbar sein.
Zusätzliche Einblicke
1. Was ist die Ursache für das Problem mit dem weißen Blitz in Chrome und Edge?
Das Problem mit dem weißen Blitz tritt auf, weil Windows bei jedem Erstellen eines neuen Fensters standardmäßig einen weißen Hintergrund verwendet, der im Kontrast zu den Designeinstellungen des Dunkelmodus des Browsers steht.
2. Welche Auswirkungen hat die von Microsoft vorgeschlagene Cloaking-Methode?
Die Cloaking-Methode ist ein temporärer Workaround, der das Fenster verbirgt, bis der dunkle Hintergrund richtig angezeigt werden kann. Dadurch wird verhindert, dass bei Fensterübergängen der weiße Blitz erscheint.
3. Wird der weiße Blitz durch zukünftige Updates vollständig beseitigt?
Während sich die aktuelle Tarnmethode mit dem weißen Blitz befasst, könnten künftige Updates stärker integrierte Lösungen in Chromium und Windows erforschen, um die zugrunde liegenden Probleme letztendlich effektiver zu lösen.
Schreibe einen Kommentar