[webkit-reviews] review granted: [Bug 41084] Get accelerated compositing working with webkit2 : [Attachment 62110] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 21 09:25:06 PDT 2010


Anders Carlsson <andersca at apple.com> has granted Simon Fraser (smfr)
<simon.fraser at apple.com>'s request for review:
Bug 41084: Get accelerated compositing working with webkit2
https://bugs.webkit.org/show_bug.cgi?id=41084

Attachment 62110: Patch
https://bugs.webkit.org/attachment.cgi?id=62110&action=review

------- Additional Comments from Anders Carlsson <andersca at apple.com>
>  } // namespace WebKit
> diff --git a/WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.h
b/WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.h
> index
2644abb4907b608351abaa5ccbe5c74ffa323e6d..05323b42f9dec1c1141a17d53cbb6fc5ef804
c79 100644
> --- a/WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.h
> +++ b/WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.h
> @@ -71,6 +71,7 @@ private:
>  
>      // DrawingAreaProxy
>      virtual void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID,
CoreIPC::ArgumentDecoder&);
> +    virtual void didReceiveSyncMessage(CoreIPC::Connection*,
CoreIPC::MessageID, CoreIPC::ArgumentDecoder&, CoreIPC::ArgumentEncoder&);
>      virtual void paint(const WebCore::IntRect&, PlatformDrawingContext);
>      virtual void setSize(const WebCore::IntSize&);
>      virtual void setPageIsVisible(bool isVisible);
> diff --git a/WebKit2/UIProcess/DrawingAreaProxy.h
b/WebKit2/UIProcess/DrawingAreaProxy.h
> index
1bd7da3cf1692d013efc8d75ac0571e9ed65c3c6..3817eb1f55c70fadafbcb58045cb464edcc62
d59 100644
> --- a/WebKit2/UIProcess/DrawingAreaProxy.h
> +++ b/WebKit2/UIProcess/DrawingAreaProxy.h
> @@ -55,7 +55,9 @@ typedef QPainter* PlatformDrawingContext;
>  
> +void WebPageProxy::setDrawingArea(DrawingAreaProxy* drawingArea)

Since m_drawingArea is an OwnPtr, this should take a PassOwnPtr. Also, the
setDrawingArea call site should use OwnPtrs.



> +#if USE(ACCELERATED_COMPOSITING)
> +	   case WebPageProxyMessage::DidChangeAcceleratedCompositing: {
> +	       bool compositing;
> +	       if (!arguments.decode(CoreIPC::Out(compositing)))
> +		   return;
> +
> +	       if (compositing)
> +		   didEnterAcceleratedCompositing();
> +	       else
> +		   didLeaveAcceleratedCompositing();
> +
> +	       DrawingAreaProxy::Type drawingAreaType = drawingArea()->type();
> +	      
reply.encode(CoreIPC::In(static_cast<uint32_t>(drawingAreaType)));
> +	       break;

We usually don't do any work other than decoding/encoding in the
didReceiveMessage case handlers. This should just call a
didChangeAcceleratedCompositing function.


More information about the webkit-reviews mailing list