Bug 1570879 Comment 3 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

The problem seemed to be caused by CompositorWindow usage. It is necessary for DirectComposition usage and DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL swap chain.

When a high contrast theme is activated, native theme is used than Lightweight Theme. In this case, TabsInTitlebar is rendered as transparent. It seems to expect that window color appear as the background color. But when CompositorWindow is used, rendered as transparent does not work as showing correct background color.

There seems to be 2 ways to address the problem.
[1] Make rendering as transparent at  CompositorWindow  work for native theme's background
[2] Do not use transparent as TabsInTitlebar background color.

I looked into [1], but I could not find a way to do it.
[2] seems possible. But I am not sure, if we could do it without regression.
The problem seemed to be caused by CompositorWindow usage. It is necessary for DirectComposition usage and DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL swap chain.

When a high contrast theme is activated, native theme is used than Lightweight Theme. In this case, TabsInTitlebar is rendered as transparent. It seems to expect that window color appear as the background color. But when CompositorWindow is used, rendered as transparent does not work as showing correct background color.

https://searchfox.org/mozilla-central/source/browser/themes/windows/browser-aero.css#94

There seems to be 2 ways to address the problem.
[1] Make rendering as transparent at  CompositorWindow  work for native theme's background
[2] Do not use transparent as TabsInTitlebar background color.

I looked into [1], but I could not find a way to do it.
[2] seems possible. But I am not sure, if we could do it without regression.
The problem seemed to be caused by CompositorWindow usage. It is necessary for DirectComposition usage and DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL swap chain.

When a high contrast theme is activated, native theme is used than Lightweight Theme. In this case, TabsInTitlebar is rendered as transparent. It seems to expect that window color appear as the background color. But when CompositorWindow is used, rendered as transparent does not work as showing correct background color.

https://searchfox.org/mozilla-central/source/browser/themes/windows/browser-aero.css#94

There seems to be 2 ways to address the problem.
- [1] Make rendering as transparent at  CompositorWindow  work for native theme's background
- [2] Do not use transparent as TabsInTitlebar background color.

I looked into [1], but I could not find a way to do it.
[2] seems possible. But I am not sure, if we could do it without regression.
The problem seemed to be caused by CompositorWindow usage. It is necessary for DirectComposition usage and DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL swap chain. CompositorWindow might be used only on Windows10.

When a high contrast theme is activated, native theme is used than Lightweight Theme. In this case, TabsInTitlebar is rendered as transparent. It seems to expect that window color appear as the background color. But when CompositorWindow is used, rendered as transparent does not work as showing correct background color.

https://searchfox.org/mozilla-central/source/browser/themes/windows/browser-aero.css#94

There seems to be 2 ways to address the problem.
- [1] Make rendering as transparent at  CompositorWindow  work for native theme's background
- [2] Do not use transparent as TabsInTitlebar background color.

I looked into [1], but I could not find a way to do it.
[2] seems possible. But I am not sure, if we could do it without regression.

Back to Bug 1570879 Comment 3