Last Comment Bug 771307 - Disable OMTC for small widgets
: Disable OMTC for small widgets
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Graphics: Layers (show other bugs)
: unspecified
: x86_64 All
: -- normal (vote)
: mozilla16
Assigned To: Nicolas Silva [:nical]
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-07-05 13:26 PDT by Nicolas Silva [:nical]
Modified: 2012-07-07 12:03 PDT (History)
1 user (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Disables OMTC for popup widgets that are not xul panels. (1.16 KB, patch)
2012-07-05 13:40 PDT, Nicolas Silva [:nical]
ajuma.bugzilla: review+
Details | Diff | Splinter Review
Disables OMTC for popup widgets that are not xul panels. (1.10 KB, patch)
2012-07-05 19:35 PDT, Nicolas Silva [:nical]
no flags Details | Diff | Splinter Review
Disables OMTC for popup widgets that are not xul panels. (1.09 KB, patch)
2012-07-05 20:10 PDT, Nicolas Silva [:nical]
ajuma.bugzilla: review+
Details | Diff | Splinter Review

Description Nicolas Silva [:nical] 2012-07-05 13:26:19 PDT
Currently, when OMTC is enabled, small widgets like tooltips and autocompletion lists are using OMTC with their own pair of Shadowable/ShadowLayerManager. This is overkill.

We need to disable OMTC for such widgets, just like we forced layers acceleration to be disabled for them (bug 751370).
Comment 1 Nicolas Silva [:nical] 2012-07-05 13:40:40 PDT
Created attachment 639455 [details] [diff] [review]
Disables OMTC for popup widgets that are not xul panels.
Comment 2 Ryan VanderMeulen [:RyanVM] 2012-07-05 18:28:29 PDT
This patch is bitrotted. Please rebase and re-attach.
Comment 3 Nicolas Silva [:nical] 2012-07-05 19:35:26 PDT
Created attachment 639558 [details] [diff] [review]
Disables OMTC for popup widgets that are not xul panels.

Rebased the patch.
Comment 4 Nicolas Silva [:nical] 2012-07-05 20:10:14 PDT
Created attachment 639567 [details] [diff] [review]
Disables OMTC for popup widgets that are not xul panels.

Ooops... incorrectly rebased previous one, this one is good and checked :)
Comment 5 Ali Juma [:ajuma] 2012-07-06 07:13:09 PDT
Comment on attachment 639567 [details] [diff] [review]
Disables OMTC for popup widgets that are not xul panels.

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

::: widget/xpwidgets/nsBaseWidget.cpp
@@ +921,5 @@
>  bool nsBaseWidget::UseOffMainThreadCompositing()
>  {
> +  bool isSmallPopup = ((mWindowType == eWindowType_popup) && 
> +                      (mPopupType != ePopupTypePanel));
> +  return (sUseOffMainThreadCompositing != nsnull) && !isSmallPopup;

return sUseOffMainThreadCompositing && !isSmallPopup;

I'll fix this and land the patch.
Comment 7 Ryan VanderMeulen [:RyanVM] 2012-07-07 12:03:46 PDT
https://hg.mozilla.org/mozilla-central/rev/4cc5e9540b60

Note You need to log in before you can comment on or make changes to this bug.