summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorschenney@chromium.org <schenney@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-02 21:03:03 +0000
committerschenney@chromium.org <schenney@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-02 21:03:03 +0000
commit276172b8f1e00033c253301fa2bdd76cfc980800 (patch)
treeee9a60e4fb1540e00150e247656a216fc0c28a38 /webkit
parentced067e6da6e3092a00546ed820d9657a1707d91 (diff)
downloadchromium_src-276172b8f1e00033c253301fa2bdd76cfc980800.zip
chromium_src-276172b8f1e00033c253301fa2bdd76cfc980800.tar.gz
chromium_src-276172b8f1e00033c253301fa2bdd76cfc980800.tar.bz2
Enable disabling WebCore::GraphicsContext in telemetry.
Plumb a flag through from telemetry tests to the layer painting code that disables the WebCore::GraphicsContext. This allows us to isolate the various systems that paint web content in Chromium. R=nduca@chromium.org,skyostil@chromium.org BUG=350684 Review URL: https://codereview.chromium.org/253013003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267913 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/renderer/compositor_bindings/web_content_layer_impl.cc17
-rw-r--r--webkit/renderer/compositor_bindings/web_content_layer_impl.h4
2 files changed, 16 insertions, 5 deletions
diff --git a/webkit/renderer/compositor_bindings/web_content_layer_impl.cc b/webkit/renderer/compositor_bindings/web_content_layer_impl.cc
index e337e48..fadafc2 100644
--- a/webkit/renderer/compositor_bindings/web_content_layer_impl.cc
+++ b/webkit/renderer/compositor_bindings/web_content_layer_impl.cc
@@ -51,9 +51,11 @@ void WebContentLayerImpl::setHasGpuRasterizationHint(bool has_hint) {
// prepaint-disabling hints (crbug.com/365885).
}
-void WebContentLayerImpl::PaintContents(SkCanvas* canvas,
- const gfx::Rect& clip,
- gfx::RectF* opaque) {
+void WebContentLayerImpl::PaintContents(
+ SkCanvas* canvas,
+ const gfx::Rect& clip,
+ gfx::RectF* opaque,
+ ContentLayerClient::GraphicsContextStatus graphics_context_status) {
if (!client_)
return;
@@ -61,7 +63,14 @@ void WebContentLayerImpl::PaintContents(SkCanvas* canvas,
// For picture layers, always record with LCD text. PictureLayerImpl
// will turn this off later during rasterization.
bool use_lcd_text = WebLayerImpl::UsingPictureLayer() || can_use_lcd_text_;
- client_->paintContents(canvas, clip, use_lcd_text, web_opaque);
+ client_->paintContents(
+ canvas,
+ clip,
+ use_lcd_text,
+ web_opaque,
+ graphics_context_status == ContentLayerClient::GRAPHICS_CONTEXT_ENABLED
+ ? blink::WebContentLayerClient::GraphicsContextEnabled
+ : blink::WebContentLayerClient::GraphicsContextDisabled);
*opaque = web_opaque;
}
diff --git a/webkit/renderer/compositor_bindings/web_content_layer_impl.h b/webkit/renderer/compositor_bindings/web_content_layer_impl.h
index a6bb7d2..369af10 100644
--- a/webkit/renderer/compositor_bindings/web_content_layer_impl.h
+++ b/webkit/renderer/compositor_bindings/web_content_layer_impl.h
@@ -38,7 +38,9 @@ class WebContentLayerImpl : public blink::WebContentLayer,
// ContentLayerClient implementation.
virtual void PaintContents(SkCanvas* canvas,
const gfx::Rect& clip,
- gfx::RectF* opaque) OVERRIDE;
+ gfx::RectF* opaque,
+ ContentLayerClient::GraphicsContextStatus
+ graphics_context_status) OVERRIDE;
virtual void DidChangeLayerCanUseLCDText() OVERRIDE;
virtual bool FillsBoundsCompletely() const OVERRIDE;