Use accelerated layers for <panels>

RESOLVED FIXED in mozilla16

Status

()

Core
Graphics: Layers
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: Dolske, Assigned: nical)

Tracking

unspecified
mozilla16
Points:
---
Bug Flags:
in-testsuite -

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

5 years ago
+++ This bug was initially created as a clone of Bug #751370 +++

Bug 751370 was filed to "not use accelerated layers for small popups windows on Linux". The patch disables layers for <panel> too, though, which can contain arbitrarily complex content. We don't do that in Firefox (yet?), but I suppose some addon might use a <panel> for something that would benefit from this.

We should probably just exempt <panel> from the bug 751370 fix. (Or possibly make it an optin/optout thing? Not sure that complexity is worth it.)
(Assignee)

Updated

5 years ago
Assignee: nobody → nsilva
(Assignee)

Comment 1

5 years ago
Created attachment 626672 [details] [diff] [review]
Allows acceleration of xul panels

This small patch does two things: 
 - it moves the PopupType() getter (and the mPopupType member) from windows's nsWindow class to the cross platform base class (nsBaseWidget), which makes more sense to me since the attribute is as relevent on linux or mac as it is on windows.
 - it uses the popup type when choosing whether or not we disable acceleration (allowing xul panels to be accelerated).
Attachment #626672 - Flags: review?(dolske)
(Assignee)

Comment 2

5 years ago
I just pushed the patch to try servers (I'd be surprised that it breaks something though).
(Assignee)

Comment 3

5 years ago
try results look good.
(Reporter)

Comment 4

5 years ago
Comment on attachment 626672 [details] [diff] [review]
Allows acceleration of xul panels

(I can't review this, bouncing over.)
Attachment #626672 - Flags: review?(dolske) → review?(bgirard)
Comment on attachment 626672 [details] [diff] [review]
Allows acceleration of xul panels

This is touching widget code, none of which is cocoa. Joe suggested bbondy to review this.
Attachment #626672 - Flags: review?(bgirard) → review?(netzen)
Comment on attachment 626672 [details] [diff] [review]
Allows acceleration of xul panels

Review of attachment 626672 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good, thanks!
Attachment #626672 - Flags: review?(netzen) → review+
I had a nit in another open window:

> bool isSmallPopup = ((mWindowType == eWindowType_popup)
> 		&& (mPopupType != ePopupTypePanel));

nit: Please put the && on the previous line and left-align to the right hand side of the equal sign.
(Assignee)

Comment 8

5 years ago
Created attachment 628808 [details] [diff] [review]
Allows acceleration of xul panels.

> > bool isSmallPopup = ((mWindowType == eWindowType_popup)
> > 		&& (mPopupType != ePopupTypePanel));
>
> nit: Please put the && on the previous line and left-align to the right hand > side of the equal sign.

Fixed :)
Attachment #626672 - Attachment is obsolete: true
Attachment #628808 - Flags: review?(netzen)
Attachment #628808 - Flags: review?(netzen) → review+
(Assignee)

Updated

5 years ago
Attachment #628808 - Flags: checkin?
Comment on attachment 628808 [details] [diff] [review]
Allows acceleration of xul panels.

Just use checkin-needed.
Attachment #628808 - Flags: checkin?
Keywords: checkin-needed
https://hg.mozilla.org/integration/mozilla-inbound/rev/e5fb5ad11849
Flags: in-testsuite-
Keywords: checkin-needed
Target Milestone: --- → mozilla16
https://hg.mozilla.org/mozilla-central/rev/e5fb5ad11849
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.