[Webkit-unassigned] [Bug 104360] Coordinated Graphics: Separeate LayerTreeCoordinator into LayerTreeCoordinator and CompositingCoordinator

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Dec 7 21:34:58 PST 2012


https://bugs.webkit.org/show_bug.cgi?id=104360





--- Comment #4 from Gwang Yoon Hwang <ryumiel at company100.net>  2012-12-07 21:37:22 PST ---
(In reply to comment #2)
> (From update of attachment 178194 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=178194&action=review
> great work! some nits.
> 
> > Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinatorClient.h:84
> > +class CompositingCoordinatorClient {
> 
> CompositingCoordinator already has a Page instance. I think CompositingCoordinator can do some works by itself.
> Perhaps this client is not necessary.

Page is not enough to remove CompositingCoordinatorClient.

For example : CompositingCoordinatorClient::layoutIfNeeded.

In the WebKit1 case, page->mainFrame()->view()->updateLayoutAndStyleIfNeededRecursive() is sufficient.
But in the WebKit2 case, we need to consider m_underlayPage in WebKit::WebPage.
That's why I delegate this to Client.

Other methods in this Client has dependencies to WebKit::WebPage, not only WebCore::Page.

> 
> > Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:57
> > +    m_compositingCoordinator = CompositingCoordinator::create(m_webPage->corePage(), this, m_compositingCoordinatorMessageClient.get());
> 
> I think LayerTreeCoordinator should delegate ownership of WebCompositingCoordinatorMessageClient to CompositingCoordinator.
> LayerTreeCoordinator sometimes uses m_compositingCoordinatorMessageClient directly, but it means WebCompositingCoordinatorMessageClient plays a role of LayerTreeCoordinator.
> I think you want to get together all communication mechanism of CompositingCoordinator into WebCompositingCoordinatorMessageClient, not them of LayerTreeCoordinator.
> 
> I mean LayerTreeCoordinator should communicate its own message by itself, not via WebCompositingCoordinatorMessageClient, and LayerTreeCoordinator does not need to own WebCompositingCoordinatorMessageClient after passing it to CompositingCoordinator.

CompositingCoordinatorMessageClient is made for interface to send messages to renderer.

And WebCompositingCoordinatorMessageClient implements interface from above, and extra messages from LayerTreeCoordinator. WebCompositingCoordinatorMessageClient has a duty to send IPC message, and manage data types just for IPC communication. So I think it is natural.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list