Various preliminary clean-ups before bug 1850979
Categories
(Core :: Widget: Win32, task)
Tracking
()
People
(Reporter: emilio, Assigned: emilio)
References
Details
(Keywords: perf-alert)
Attachments
(4 files, 4 obsolete files)
Assignee | ||
Comment 1•9 months ago
|
||
No behavior change intended. I plan to use this to hide the titlebar
buttons when drawing to the titlebar (we currently draw on top of them).
But seems worth factoring out regardless.
Updated•9 months ago
|
Assignee | ||
Comment 2•9 months ago
|
||
Right now, we don't use top level transparent windows (they're
completely unused).
This removes some code that causes trouble when reintroducing them.
Depends on D207297
Assignee | ||
Comment 3•9 months ago
|
||
All the comments on this function are for platforms we don't support.
Right now we don't have any of these top-level transparent windows, but
we want to use DWM and Webrender for these just like for regular windows.
Depends on D207298
Assignee | ||
Comment 4•9 months ago
|
||
Just some clean-ups that I accumulated while going over this code.
Depends on D207299
Assignee | ||
Comment 5•9 months ago
|
||
Again, dead code for now because the windows are always opaque,
but will be useful later on since this allows restricting the
region that needs to have transparency.
Depends on D207300
Assignee | ||
Comment 6•9 months ago
|
||
This shouldn't matter in practice for popups, but we need to do it for
top levels, where otherwise DWM won't re-paint the backdrop material.
Depends on D207301
Updated•9 months ago
|
Comment 10•9 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/bdb5dbc1e980
https://hg.mozilla.org/mozilla-central/rev/24dc60b32e21
Comment 11•9 months ago
|
||
Comment 12•9 months ago
•
|
||
Assignee | ||
Updated•9 months ago
|
Updated•9 months ago
|
Comment 13•9 months ago
|
||
bugherder |
Assignee | ||
Comment 14•9 months ago
|
||
Yikes, I forgot to add the leave-open keyword again...
Updated•9 months ago
|
Comment 15•9 months ago
|
||
Comment 16•9 months ago
|
||
bugherder |
Updated•9 months ago
|
Assignee | ||
Comment 17•9 months ago
|
||
If we are using custom non-client area (mCustomNonClient) suppress more
directly the default windows actions in WM_NCPAINT / WM_NCACTIVATE.
This prevents titlebars showing up when using custom non-client areas
in semi-transparent windows.
Depends on D207302
Comment 18•9 months ago
|
||
Comment 19•9 months ago
|
||
bugherder |
Assignee | ||
Updated•9 months ago
|
Assignee | ||
Comment 20•8 months ago
|
||
Ray, can you attach a screenshot of what you're seeing in https://phabricator.services.mozilla.com/D208255#7152576? Thanks.
Also, just confirming that you tested that on top of https://phabricator.services.mozilla.com/D207302 (which is what clears the NC Area)
Comment 21•8 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #20)
Ray, can you attach a screenshot of what you're seeing in https://phabricator.services.mozilla.com/D208255#7152576? Thanks.
Also, just confirming that you tested that on top of https://phabricator.services.mozilla.com/D207302 (which is what clears the NC Area)
I can confirm the latter now; I piggybacked on the Phabricator-launched try job to create the build. I'll post a screenshot shortly.
Comment 22•8 months ago
|
||
Comment 23•8 months ago
|
||
bugherder |
Updated•8 months ago
|
Assignee | ||
Comment 24•8 months ago
|
||
I'll land other patches in other bugs to ease tracking.
Updated•8 months ago
|
Updated•8 months ago
|
Comment 25•8 months ago
|
||
I'm reviewing the patches in the linked regressions now, but... given that there are three distinct known regressions, some of whose proposed fixes are decidedly nontrivial, I think it's worth considering reverting these patches, and reapplying them more slowly in separate phases with the fixes integrated appropriately.
Assignee | ||
Comment 26•8 months ago
|
||
I plan to ask for a backout on beta once the soft-freeze is over, which will give them more bake time. I'd prefer that to avoid backing out then re-landing... Does that seem fair to you?
Comment 27•8 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #26)
I plan to ask for a backout on beta once the soft-freeze is over, which will give them more bake time. I'd prefer that to avoid backing out then re-landing... Does that seem fair to you?
I wouldn't say I'm a fan of that approach; but if that's the plan, I'm at least no longer worried.
I'd probably think it a better idea if I also thought it unlikely that further regressions would manifest, or alternatively, if I gave the fixes better odds of all getting reviewed, approved, and landed before the soft-freeze. (That's at least partly on me, but there's a limit to how much I can do about it at the moment.) I'm also concerned that this is going to be quite the mess for future archaeologists to sort out, but it's probably too late to help that.
Comment 28•8 months ago
|
||
Yeah, on further thought I really don't think I'm going to have the spare cycles to get through all of these reviews before the freeze. Given that I don't recall anyone else in #win-reviewers even commenting, I doubt anyone else does either.
Given that what's going to be baking is unlikely to be the full fix, and especially since these patches weren't intended to address a user-facing defect...
Assignee | ||
Comment 29•8 months ago
|
||
This backs out:
- Bug 1894135 - Fix tooltip / unaccelerated transparent window rendering regression. r=win-reviewers,rkraesig
- Bug 1891063 - Improve invalidation of top-level transparent windows. r=win-reviewers,rkraesig,handyman
- Bug 1891063 - Allow transparent top level windows to be accelerated. r=win-reviewers,gfx-reviewers,rkraesig,nical
- Bug 1891063 - Remove unused code for transparency. r=win-reviewers,rkraesig
For various regressions that need more time to get fixes reviewed and
written. Intentionally left in truly-non-behavior-changing patches.
Confirmed that all the reported regressions are working with this build.
Will try to reland these / other similar stuff during the next cycle,
with all these issues sorted out.
Updated•8 months ago
|
Comment 30•8 months ago
|
||
A patch has been attached on this bug, which was already closed. Filing a separate bug will ensure better tracking. If this was not by mistake and further action is needed, please alert the appropriate party. (Or: if the patch doesn't change behavior -- e.g. landing a test case, or fixing a typo -- then feel free to disregard this message)
Comment 31•8 months ago
|
||
Assignee | ||
Comment 33•8 months ago
|
||
I plan to re-land some of this work, but it should happen on separate bugs etc.
Updated•8 months ago
|
Comment 34•8 months ago
|
||
(In reply to Emilio Cobos Álvarez (:emilio) from comment #33)
I plan to re-land some of this work, but it should happen on separate bugs etc.
Thanks, Emilio. I think that's the best approach with some patches from this bug already going into 127. It'll make tracking more straightforward.
Updated•8 months ago
|
Updated•8 months ago
|
Updated•8 months ago
|
Comment 35•5 months ago
|
||
Comment on attachment 9396298 [details]
Bug 1891063 - Improve invalidation of top-level transparent windows. r=#win-reviewers
Revision D207302 was moved to bug 1911763. Setting attachment 9396298 [details] to obsolete.
Comment 36•5 months ago
|
||
Comment on attachment 9398011 [details]
Bug 1891063 - Simplify non-client-area event handling. r=#win-reviewers
Revision D208255 was moved to bug 1911763. Setting attachment 9398011 [details] to obsolete.
Updated•4 months ago
|
Description
•