Implement (or mock) Windows 11 Mica (acrylic backdrop) for the title bar
Categories
(Core :: Widget: Win32, enhancement, P2)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox133 | --- | fixed |
People
(Reporter: saschanaz, Assigned: emilio)
References
(Blocks 1 open bug, )
Details
Attachments
(1 file)
Windows 11 is getting acrylic context menu in several places including File Explorer, the taskbar, Photos, and Microsoft Edge. I guess we'll want to follow as we already have done same in macOS (at least per what I see in bug 1764683).
Updated•3 years ago
|
| Reporter | ||
Updated•3 years ago
|
| Reporter | ||
Updated•3 years ago
|
| Reporter | ||
Updated•3 years ago
|
Updated•3 years ago
|
| Assignee | ||
Comment 1•3 years ago
|
||
This looks similar to the already-existing macOS vibrancy support, perhaps?
| Reporter | ||
Comment 2•3 years ago
|
||
I agree for the context menu, but does it also apply to the browser chrome on macOS?
It only applies to context menus and the places sidebar by default.
Comment 4•3 years ago
|
||
Context menus don’t use Mica, but Acrylic. Just thought I’d point it out, given the bug’s current title.
| Reporter | ||
Comment 5•2 years ago
|
||
Seems DWMWA_SYSTEMBACKDROP_TYPE does the work? https://learn.microsoft.com/en-us/windows/win32/api/dwmapi/ne-dwmapi-dwmwindowattribute
It would be great to support for acrylic backdrop not only in context menus, but arrow panels as well. Similar to how vibrancy backdrop is applied on MacOS when "-moz-mac-source-list" appearance is set on the :root element.
| Assignee | ||
Comment 7•2 years ago
|
||
bug 1850979 has a very rough hack that does some / most of it.
| Assignee | ||
Comment 8•2 years ago
|
||
(But I'd appreciate someone more familiar with Windows bits and compositing to carry it over the finish line)
Win32Acrylic seems to be a reasonable implementation of the Acrylic/Mica brush in a Win32 environment without any Win2D cruft. Something like that could potentially be a better solution than setting the backdrop material with DwmSetWindowAttribute.
It's worth noting that both (Edge)[https://winaero.com/edge-restores-mica-for-titlebar-and-toolbar-heres-how-to-enable-it/] and (Chrome)[https://winaero.com/chrome-now-supports-mica-effect-on-its-title-bar/] are currently testing Mica in their titlebars; Firefox risks looking outdated by comparison once the other browsers have enabled this by default.
Comment 10•1 year ago
|
||
When are you planning to add this effect? Is there any schedule or at least an approximate deadline? Many would like to be able to use this effect, at least through an experimental key.
Comment 11•1 year ago
|
||
Thanks for working on this! I need to use Firefox as my main browser app at work for its extension support, so I'd love to see this feature. Just wanted to voice my support for this enhancement.
I developed a WinUI 3 app at work, which takes advantage of Mica material. According to Microsoft, Mica Alt is designed "to provide a deeper visual hierarchy than Mica, especially when creating an app with a tabbed title bar", and I can see that this has already been considered inside 1850979 (Mica hack), which is great. In addition, Microsoft also states that for "apps with context menus, flyouts, non-modal popups, or light-dismiss panes, we recommend that you use background acrylic, especially if these surfaces draw outside the frame of the main app window". Accordingly, Edge uses background acrylic for these items.
Comment 12•1 year ago
|
||
Any progress on this?
Comment 13•1 year ago
|
||
(In reply to mbg from comment #12)
Any progress on this?
There has been, though it's all been in the background so far — our long-neglected handling of transparent windows on Windows (on which translucency depends) has been getting a rework and bugfixes.
Comment 14•1 year ago
|
||
That's great to hear! Can't wait for it to come out
| Assignee | ||
Comment 15•1 year ago
|
||
This is somewhat straight-forward now that all the dependencies are
landed.
I think we do need to find a solution to make the app titlebar buttons
taller, by hiding the caption buttons
(https://phabricator.services.mozilla.com/D207303 tried to do this, but
ran into other issues), or making the titlebar taller, which is doable
in UWP at least, but I don't see any way of doing it in win32 apps:
But still this is usable and would be worth getting in, since it's
needed for the translucent sidebar work too.
Updated•1 year ago
|
Comment 16•1 year ago
|
||
Comment 17•1 year ago
|
||
Comment 18•1 year ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/67cca07bbf52
https://hg.mozilla.org/mozilla-central/rev/0ce6969791a6
| Reporter | ||
Comment 19•1 year ago
|
||
Let's split context menu thing.
Updated•1 year ago
|
Updated•1 year ago
|
| Assignee | ||
Updated•1 year ago
|
Updated•1 year ago
|
Description
•