Title: [128630] trunk/Source/Platform
Revision
128630
Author
[email protected]
Date
2012-09-14 10:59:41 -0700 (Fri, 14 Sep 2012)

Log Message

[chromium] Add the ubercomp WebDelegatedRendererLayer
https://bugs.webkit.org/show_bug.cgi?id=94145

Reviewed by Adrienne Walker.

Expose a WebDelegatedRendererLayer to allow the browser compositor to
embed such a layer in its tree. This layer will be connected to IPC
machinery in the compositor that is yet TBD which will give a set of
RenderPasses with DrawQuads to the impl copy of the layer.

* Platform.gypi:
* chromium/public/WebCompositorSupport.h:
(WebKit):
(WebKit::WebCompositorSupport::createDelegatedRendererLayer):
(WebCompositorSupport):
* chromium/public/WebDelegatedRendererLayer.h: Added.
(WebKit):
(WebDelegatedRendererLayer):
(WebKit::WebDelegatedRendererLayer::~WebDelegatedRendererLayer):

Modified Paths

Added Paths

Diff

Modified: trunk/Source/Platform/ChangeLog (128629 => 128630)


--- trunk/Source/Platform/ChangeLog	2012-09-14 17:54:22 UTC (rev 128629)
+++ trunk/Source/Platform/ChangeLog	2012-09-14 17:59:41 UTC (rev 128630)
@@ -1,3 +1,25 @@
+2012-09-14  Dana Jansens  <[email protected]>
+
+        [chromium] Add the ubercomp WebDelegatedRendererLayer
+        https://bugs.webkit.org/show_bug.cgi?id=94145
+
+        Reviewed by Adrienne Walker.
+
+        Expose a WebDelegatedRendererLayer to allow the browser compositor to
+        embed such a layer in its tree. This layer will be connected to IPC
+        machinery in the compositor that is yet TBD which will give a set of
+        RenderPasses with DrawQuads to the impl copy of the layer.
+
+        * Platform.gypi:
+        * chromium/public/WebCompositorSupport.h:
+        (WebKit):
+        (WebKit::WebCompositorSupport::createDelegatedRendererLayer):
+        (WebCompositorSupport):
+        * chromium/public/WebDelegatedRendererLayer.h: Added.
+        (WebKit):
+        (WebDelegatedRendererLayer):
+        (WebKit::WebDelegatedRendererLayer::~WebDelegatedRendererLayer):
+
 2012-09-11  Zach Kuznia  <[email protected]>
 
         Fix FilterTypeZoom to properly call canvas->restore()

Modified: trunk/Source/Platform/Platform.gypi (128629 => 128630)


--- trunk/Source/Platform/Platform.gypi	2012-09-14 17:54:22 UTC (rev 128629)
+++ trunk/Source/Platform/Platform.gypi	2012-09-14 17:59:41 UTC (rev 128630)
@@ -53,6 +53,7 @@
             'chromium/public/WebCookie.h',
             'chromium/public/WebCookieJar.h',
             'chromium/public/WebData.h',
+            'chromium/public/WebDelegatedRendererLayer.h',
             'chromium/public/WebDragData.h',
             'chromium/public/WebExternalTextureLayer.h',
             'chromium/public/WebExternalTextureLayerClient.h',

Modified: trunk/Source/Platform/chromium/public/WebCompositorSupport.h (128629 => 128630)


--- trunk/Source/Platform/chromium/public/WebCompositorSupport.h	2012-09-14 17:54:22 UTC (rev 128629)
+++ trunk/Source/Platform/chromium/public/WebCompositorSupport.h	2012-09-14 17:59:41 UTC (rev 128630)
@@ -36,6 +36,7 @@
 class WebAnimationCurve;
 class WebContentLayer;
 class WebContentLayerClient;
+class WebDelegatedRendererLayer;
 class WebExternalTextureLayer;
 class WebExternalTextureLayerClient;
 class WebFloatAnimationCurve;
@@ -81,6 +82,8 @@
 
     virtual WebContentLayer* createContentLayer(WebContentLayerClient*) { return 0; }
 
+    virtual WebDelegatedRendererLayer* createDelegatedRendererLayer() { return 0; }
+
     virtual WebExternalTextureLayer* createExternalTextureLayer(WebExternalTextureLayerClient* = 0) { return 0; }
 
     virtual WebIOSurfaceLayer* createIOSurfaceLayer() { return 0; }

Added: trunk/Source/Platform/chromium/public/WebDelegatedRendererLayer.h (0 => 128630)


--- trunk/Source/Platform/chromium/public/WebDelegatedRendererLayer.h	                        (rev 0)
+++ trunk/Source/Platform/chromium/public/WebDelegatedRendererLayer.h	2012-09-14 17:59:41 UTC (rev 128630)
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2012 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef WebDelegatedRendererLayer_h
+#define WebDelegatedRendererLayer_h
+
+#include "WebCommon.h"
+
+namespace WebKit {
+
+// This class represents a layer that renders the output of another
+// delegating compositor. It is created and owned by the embedder, who
+// provides the layer with a set of RenderPasses generated by the
+// compositor that the layer represents. This layer's output becomes the
+// same RenderPasses it received from the embedder.
+class WebDelegatedRendererLayer {
+public:
+    virtual ~WebDelegatedRendererLayer() { }
+
+    virtual WebLayer* layer() = 0;
+};
+
+} // namespace WebKit
+
+#endif // WebDelegatedRendererLayer_h
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to