WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
67438
[chromium] Move updateLayers from LayerRendererChromium to CCLayerTreeHost
https://bugs.webkit.org/show_bug.cgi?id=67438
Summary
[chromium] Move updateLayers from LayerRendererChromium to CCLayerTreeHost
Adrienne Walker
Reported
2011-09-01 14:50:56 PDT
updateLayers processes the LayerChromium tree on the main thread, so it should live on CCLayerTreeHost rather than on the LayerRendererChromium.
Attachments
Patch
(67.78 KB, patch)
2011-09-01 16:51 PDT
,
Adrienne Walker
no flags
Details
Formatted Diff
Diff
Patch
(67.69 KB, patch)
2011-09-02 10:53 PDT
,
Adrienne Walker
no flags
Details
Formatted Diff
Diff
Patch
(68.71 KB, patch)
2011-09-02 13:40 PDT
,
Adrienne Walker
jamesr
: review+
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Adrienne Walker
Comment 1
2011-09-01 16:51:05 PDT
Created
attachment 106065
[details]
Patch
Nat Duca
Comment 2
2011-09-02 09:44:52 PDT
Comment on
attachment 106065
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=106065&action=review
Sheep.
> Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:-104 > -void CCLayerTreeHost::preCommit(CCLayerTreeHostImpl* hostImpl)
This is a wonderful deletion to wake up to. Thank you!!!
> Source/WebCore/platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:-239 > - m_layerTreeHostImpl->updateLayers();
<3
Adrienne Walker
Comment 3
2011-09-02 10:53:55 PDT
Created
attachment 106153
[details]
Patch
Adrienne Walker
Comment 4
2011-09-02 10:55:17 PDT
(In reply to
comment #3
)
> Created an attachment (id=106153) [details] > Patch
Rebaselined, applies to ToT. I'd love to get this into m15 to make merging less painful.
James Robinson
Comment 5
2011-09-02 11:21:56 PDT
Comment on
attachment 106153
[details]
Patch R=me, excellent. The name "CCLayerTreeHostCommon.h" is a little worrying to me because it contains a friggin' gigantic inline templatized function. I don't want people to include that from another header file, or really from any file other than CCLayerTreeHost and LayerRendererChromium. One pattern I've seen elsewhere in the code is to suffix these sorts of headers with "InlineMethods.h", what would you think of doing that? Also, shouldn't the other caller be CCLayerTreeHostImpl, not LRC?
Adrienne Walker
Comment 6
2011-09-02 11:29:16 PDT
(In reply to
comment #5
)
> (From update of
attachment 106153
[details]
) > R=me, excellent. The name "CCLayerTreeHostCommon.h" is a little worrying to me because it contains a friggin' gigantic inline templatized function. I don't want people to include that from another header file, or really from any file other than CCLayerTreeHost and LayerRendererChromium. One pattern I've seen elsewhere in the code is to suffix these sorts of headers with "InlineMethods.h", what would you think of doing that?
Actually, how about I declare the two versions we export in the header, move the template to the source file and then define the two stub functions we care about?
> Also, shouldn't the other caller be CCLayerTreeHostImpl, not LRC?
Yes, eventually I think that should be the case. Nat has been making the excellent argument that LTH(I) should deal with layer trees and LRC is our gl implementation. Under that sort of organization, drawLayers should move to LTHI. This is the more important move though, because it's across the thread boundary. Moving drawLayers is more of a cleanup. One thing at a time.
James Robinson
Comment 7
2011-09-02 11:39:52 PDT
(In reply to
comment #6
)
> (In reply to
comment #5
) > > (From update of
attachment 106153
[details]
[details]) > > R=me, excellent. The name "CCLayerTreeHostCommon.h" is a little worrying to me because it contains a friggin' gigantic inline templatized function. I don't want people to include that from another header file, or really from any file other than CCLayerTreeHost and LayerRendererChromium. One pattern I've seen elsewhere in the code is to suffix these sorts of headers with "InlineMethods.h", what would you think of doing that? > > Actually, how about I declare the two versions we export in the header, move the template to the source file and then define the two stub functions we care about?
If you can make it blend that sounds great!
> > > Also, shouldn't the other caller be CCLayerTreeHostImpl, not LRC? > > Yes, eventually I think that should be the case. Nat has been making the excellent argument that LTH(I) should deal with layer trees and LRC is our gl implementation. Under that sort of organization, drawLayers should move to LTHI. > > This is the more important move though, because it's across the thread boundary. Moving drawLayers is more of a cleanup. One thing at a time.
Yes, definitely that's not a thing to do now - I was just asking to make sure I knew where we were going.
Adrienne Walker
Comment 8
2011-09-02 13:40:09 PDT
Created
attachment 106185
[details]
Patch
Adrienne Walker
Comment 9
2011-09-02 13:40:42 PDT
> > Actually, how about I declare the two versions we export in the header, move the template to the source file and then define the two stub functions we care about? > > If you can make it blend that sounds great!
If I've learned anything from Will It Blend?, it's that the answer is always yes.
James Robinson
Comment 10
2011-09-02 13:47:17 PDT
Comment on
attachment 106185
[details]
Patch Aha, I see what you did there. Clever. R=me
Adrienne Walker
Comment 11
2011-09-02 18:05:33 PDT
Committed
r94474
: <
http://trac.webkit.org/changeset/94474
>
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