RESOLVED FIXED 87563
[BlackBerry] BackingStore accesses tiles even though it's not active
https://bugs.webkit.org/show_bug.cgi?id=87563
Summary [BlackBerry] BackingStore accesses tiles even though it's not active
Arvid Nilsson
Reported 2012-05-25 22:10:39 PDT
PR #150403 There are many scenarios that can call render and cause tile access, and they used to be rerouted to the direct rendering code when the backing store was not active. This was thanks to an implicit check for isActive() by virtue of calling shouldDirectRenderingToWindow() from render(). If we're using OpenGL for compositing the backing store contents however, direct rendering is always disabled and we jump right into the tile based rendering code. Fixed by adding an explicit check for isActive() in render(), now that the implicit check in shouldDirectRenderingToWindow() is conditional on having raster usage. Since PR136381/bug83131, when OpenGL compositing is used, and the backing store is not active, it is not in charge of drawing the root layer. Instead, we switch off the paintingGoesToWindow flag on the root RenderLayer so no invalidates will reach the ChromeClient or the BackingStore any more. Instead, invalidations will cause the root accelerated compositing layer to be repainted. Any BackingStore render calls while in this state are pointless, and can safely do an early return. Reviewed internally by Jakob Petsovits.
Attachments
Patch (2.99 KB, patch)
2012-05-27 05:42 PDT, Arvid Nilsson
no flags
Arvid Nilsson
Comment 1 2012-05-27 05:42:58 PDT
WebKit Review Bot
Comment 2 2012-05-27 07:41:57 PDT
Comment on attachment 144226 [details] Patch Clearing flags on attachment: 144226 Committed r118626: <http://trac.webkit.org/changeset/118626>
WebKit Review Bot
Comment 3 2012-05-27 07:42:01 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.