|Summary:||[BlackBerry] Overlays display checkerboard that doesn't resolve|
|Product:||WebKit||Reporter:||Arvid Nilsson <anilsson>|
|Component:||WebKit BlackBerry||Assignee:||Arvid Nilsson <anilsson>|
|Severity:||Normal||CC:||anilsson, manyoso, mifenton, rwlbuis, staikos, tonikitoo, webkit.review.bot, yong.li.webkit|
|Version:||528+ (Nightly build)|
Description Arvid Nilsson 2012-08-03 05:38:41 PDT
The WebKit-thread overlays, like tap highlight, inspector highlight and selection are all part of a separate graphics layer tree rooted in WebPagePrivate::m_overlayLayer. When LayerRenderer needs to schedule a commit to reactively render tiles and resolve checkerboard, it does so through the root layer. Since the overlay layer root didn't have a GraphicsLayerClient, there was no implementation of GraphicsLayerClient::notifySyncRequired() to call, and a commit was never scheduled, thus checkerboard never resolved. Fixed by adding a fallback implementation of GraphicsLayerClient in WebPagePrivate and hooking up the overlay root to it. Also, this implementation can be shared by the various overlays to avoide code duplication, specifically to implement notifySyncRequired(), showDebugBorders(), showRepaintCounter() only once.
Comment 1 Arvid Nilsson 2012-08-03 05:43:04 PDT
In addition, I found a bug where WebPagePrivate::updateDelegatedOverlays() was called right in the middle of the commit operation, after performing the webkit thread part of the commit operation but before we continued on the compositing thread. Since updateDelegatedOverlays() typically mutates layers, this is bad (layers should not be mutated mid-commit) and also caused each commit to schedule a new one which results in an endless sequence of commits.
Comment 3 Antonio Gomes 2012-08-03 07:12:19 PDT
Comment on attachment 156340 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=156340&action=review > Source/WebKit/blackberry/Api/WebPage_p.h:395 > + // Fallback GraphicsLayerClient implementation, used for various overlay layers nit: lacks a period at the end.
Comment 6 Arvid Nilsson 2012-08-03 07:27:49 PDT
Comment on attachment 156374 [details] Patch Already reviewed by Antonio, just added a dot to a comment.
Comment 7 WebKit Review Bot 2012-08-03 08:19:34 PDT
Comment on attachment 156374 [details] Patch Clearing flags on attachment: 156374 Committed r124615: <http://trac.webkit.org/changeset/124615>
Comment 8 WebKit Review Bot 2012-08-03 08:19:38 PDT
All reviewed patches have been landed. Closing bug.