WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
93099
[BlackBerry] Overlays display checkerboard that doesn't resolve
https://bugs.webkit.org/show_bug.cgi?id=93099
Summary
[BlackBerry] Overlays display checkerboard that doesn't resolve
Arvid Nilsson
Reported
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.
Attachments
Patch
(14.66 KB, patch)
2012-08-03 05:54 PDT
,
Arvid Nilsson
no flags
Details
Formatted Diff
Diff
Patch
(14.66 KB, patch)
2012-08-03 07:27 PDT
,
Arvid Nilsson
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Arvid Nilsson
Comment 1
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.
Arvid Nilsson
Comment 2
2012-08-03 05:54:52 PDT
Created
attachment 156340
[details]
Patch
Antonio Gomes
Comment 3
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.
Antonio Gomes
Comment 4
2012-08-03 07:14:12 PDT
Comment on
attachment 156340
[details]
Patch err r+
Arvid Nilsson
Comment 5
2012-08-03 07:27:16 PDT
Created
attachment 156374
[details]
Patch
Arvid Nilsson
Comment 6
2012-08-03 07:27:49 PDT
Comment on
attachment 156374
[details]
Patch Already reviewed by Antonio, just added a dot to a comment.
WebKit Review Bot
Comment 7
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
>
WebKit Review Bot
Comment 8
2012-08-03 08:19:38 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.
Top of Page
Format For Printing
XML
Clone This Bug