Closed
Bug 1264365
Opened 9 years ago
Closed 9 years ago
Un-remove nsBaseWidget::IsSmalPopup
Categories
(Core :: Graphics: Layers, defect)
Core
Graphics: Layers
Tracking
()
RESOLVED
FIXED
mozilla50
Tracking | Status | |
---|---|---|
firefox50 | --- | fixed |
People
(Reporter: nical, Assigned: nical)
References
Details
(Whiteboard: [gfx-noted])
Attachments
(1 file)
1.92 KB,
patch
|
dvander
:
review+
|
Details | Diff | Splinter Review |
In bug 943084 we removed IsSmallPopup but the reason isn't quite clear to me. The bug says that in the context of OMTC, forcing the basic backend for popup widgets doesn't make sense. I am going to assume that it's because back then we didn't support having several compositor backends at the same time, but now we do. Or maybe was it simplify things (everything is either accelerated or not accelerated).
But having lots of gl contexts on the compositor thread (we have one per accelerated widget) means switching between them, which is costly, and switching between different contexts is typically the kind of place where eventual driver bugs get the sneakiest.
So I'll resurrect the IsSmallPopup check and we'll see how it goes.
Assignee | ||
Comment 1•9 years ago
|
||
Actually, after a closer look at the patch in bug 943084, it was used to choose whether to use OMTC for that widget and not only to choose the compsoitor backend. So what I am doing here is not entirely contradicting what happened in that bug which is reassuring.
Assignee | ||
Updated•9 years ago
|
Whiteboard: [gfx-noted]
Assignee | ||
Comment 2•9 years ago
|
||
Attachment #8741396 -
Flags: review?(dvander)
Comment on attachment 8741396 [details] [diff] [review]
Use the basic compositor for popup widgets
Review of attachment 8741396 [details] [diff] [review]:
-----------------------------------------------------------------
r=me with that fixed
::: widget/nsBaseWidget.cpp
@@ +922,5 @@
> }
>
> +bool nsBaseWidget::IsSmallPopup() const
> +{
> + return mWindowType != eWindowType_popup && mPopupType != ePopupTypePanel;
I think this should be "mWindowType == eWindowType_popup ..."
Attachment #8741396 -
Flags: review?(dvander) → review+
Assignee | ||
Comment 5•9 years ago
|
||
(In reply to David Anderson [:dvander] from comment #3)
> I think this should be "mWindowType == eWindowType_popup ..."
Yeah, silly me. Fixed in the patch that landed.
Comment 6•9 years ago
|
||
backed out for crashes like https://treeherder.mozilla.org/logviewer.html#?job_id=26294140&repo=mozilla-inbound
Flags: needinfo?(nical.bugzilla)
Comment 8•9 years ago
|
||
seems https://treeherder.mozilla.org/logviewer.html#?job_id=26296821&repo=mozilla-inbound is also related
Assignee | ||
Comment 9•9 years ago
|
||
I made another silly mistake on the patch I tried to land. I pushed a fixed version to try, let's see.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=77bf32454ef47fee0836a7924466e74c21d18644
Flags: needinfo?(nical.bugzilla)
Assignee | ||
Comment 10•9 years ago
|
||
New try push with fixed patch https://treeherder.mozilla.org/#/jobs?repo=try&revision=04d3d2de0bcc29c0a011aa220bdfc2a3aa19ddbb
I also made it linux-only because it does not buy us anything on mac since we still use a gl context per (basic) widget to get stuff to the screen.
Comment 11•9 years ago
|
||
Pushed by nsilva@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/e9723c6c6136
Disable hardware acceleration for small popup widgets. r=dvander
Comment 12•9 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox50:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla50
You need to log in
before you can comment on or make changes to this bug.
Description
•