Bug 83127 - [BlackBerry] Disable paintingGoesToWindow() for the root layer when force compositing mode is active
Summary: [BlackBerry] Disable paintingGoesToWindow() for the root layer when force com...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-04 01:55 PDT by Arvid Nilsson
Modified: 2012-04-05 09:10 PDT (History)
11 users (show)

See Also:


Attachments
Patch (3.00 KB, patch)
2012-04-04 02:19 PDT, Arvid Nilsson
no flags Details | Formatted Diff | Diff
Patch (3.00 KB, patch)
2012-04-04 03:00 PDT, Arvid Nilsson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Arvid Nilsson 2012-04-04 01:55:53 PDT
The BlackBerry port will use accelerated compositing code path to render the root layer in some situation.

The plan is to do this by activating the forceCompositingMode() setting, but that in itself doesn't accomplish anything, since painting will still go to window for the root layer.

Thus a special clause in RenderLayerBacking::paintingGoesToWindow() will be added for PLATFORM(BLACKBERRY).
Comment 1 Arvid Nilsson 2012-04-04 01:58:56 PDT
The force compositing setting was introduced in bug #56156
Comment 2 Arvid Nilsson 2012-04-04 02:19:08 PDT
Created attachment 135533 [details]
Patch
Comment 3 Arvid Nilsson 2012-04-04 02:24:11 PDT
Perhaps this is something the Chromium team is interested in, I'm not sure why they originally added the "force compositing" setting. Perhaps in the future, this can be a cross-platform mechanism rather than a PLATFORM(BLACKBERRY) ifdef?
Comment 4 Arvid Nilsson 2012-04-04 03:00:36 PDT
Created attachment 135541 [details]
Patch
Comment 5 Arvid Nilsson 2012-04-04 03:01:25 PDT
(In reply to comment #4)
> Created an attachment (id=135541) [details]
> Patch

Renamed the new method to "inForcedCompositingMode()" to match the existing "inCompositingMode()" method.
Comment 6 James Robinson 2012-04-04 13:31:43 PDT
In Chromium we paint root contents to the "window" and handle that externally to WebCore.
Comment 7 George Staikos 2012-04-05 05:42:06 PDT
(In reply to comment #6)
> In Chromium we paint root contents to the "window" and handle that externally to WebCore.

Are you saying you have concerns with the approach in this patch?
Comment 8 Arvid Nilsson 2012-04-05 07:04:35 PDT
(In reply to comment #7)
> (In reply to comment #6)
> > In Chromium we paint root contents to the "window" and handle that externally to WebCore.
> 
> Are you saying you have concerns with the approach in this patch?

I don't think so - I added them to the bug's CC list since I was curious about what Chromium uses the "force compositing" setting for when it doesn't really do anything out of the box (since painting still goes to the window according to James' comment above.)

If they are interested in this here feature (forcing root layer painting to go to layer instead of window) perhaps we can break it out into a separate setting in the future.
Comment 9 Rob Buis 2012-04-05 09:01:11 PDT
Comment on attachment 135541 [details]
Patch

LGTM.
Comment 10 WebKit Review Bot 2012-04-05 09:10:54 PDT
Comment on attachment 135541 [details]
Patch

Clearing flags on attachment: 135541

Committed r113326: <http://trac.webkit.org/changeset/113326>
Comment 11 WebKit Review Bot 2012-04-05 09:10:59 PDT
All reviewed patches have been landed.  Closing bug.