aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/device
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2015-03-13 12:34:32 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-03-13 12:34:32 -0700
commit8e14d660b2a434bc708a70180c84210883611683 (patch)
tree2e5c8df882fdb80a1b5fc7816c9a27de371f034e /src/device
parent5bf99f1ca8f30287803b594d06c60a7b6796ad45 (diff)
Revert of Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1006923002/)
Reason for revert: platform_canvas tests failures skia_unittests (with patch) skia_unittests (with patch) PlatformCanvas.TranslateLayer failed 2 Flakiness dashboard failures: PlatformCanvas.TranslateLayer PlatformCanvas.FillLayer Original issue's description: > Revert of Revert of Change device creation to see the (optional) layer-paint (patchset #1 id:1 of https://codereview.chromium.org/1008863002/) > > Reason for revert: > guard in chrome has landed > > Original issue's description: > > Revert of Change device creation to see the (optional) layer-paint (patchset #9 id:160001 of https://codereview.chromium.org/988413003/) > > > > Reason for revert: > > need to have chrome opt-in for the older API before this can land (in chrome) > > > > Original issue's description: > > > Change device creation to see the (optional) layer-paint > > > > > > Motivation: > > > > > > PDFDevice currently relies on 1) being told that the layer's paint has an imagefilter, and in the case, it creates a rasterdevice. It then relies on (2) canvas itself sniffing the layer's paint and offering to apply-the-imagefilter to call drawSprite instead of drawDevice. > > > > > > This subtle interchange is fragile, and also does not support other unsupported PDF features like colorfilters. This CL is a step toward making this use-raster-instead-of-native approach to layers more completely in the subclass' hands. > > > > > > Committed: https://skia.googlesource.com/skia/+/1182d9a96b80bd12183ee7c81325a979a51ee0c0 > > > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > > > Committed: https://skia.googlesource.com/skia/+/0e040f7da2fdfeb49aa60d24117306e3b1e6ea90 > > TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://skia.googlesource.com/skia/+/f7076a13e2d4269903b34ef2780e1c84723e4477 TBR=halcanary@google.com,senorblanco@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1001423002
Diffstat (limited to 'src/device')
-rw-r--r--src/device/xps/SkXPSDevice.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/device/xps/SkXPSDevice.cpp b/src/device/xps/SkXPSDevice.cpp
index 88d1182526..2ca799ac37 100644
--- a/src/device/xps/SkXPSDevice.cpp
+++ b/src/device/xps/SkXPSDevice.cpp
@@ -2251,7 +2251,7 @@ void SkXPSDevice::drawDevice(const SkDraw& d, SkBaseDevice* dev,
"Could not add layer to current visuals.");
}
-SkBaseDevice* SkXPSDevice::onCreateDevice(const CreateInfo& info, const SkPaint*) {
+SkBaseDevice* SkXPSDevice::onCreateCompatibleDevice(const CreateInfo& info) {
//Conditional for bug compatibility with PDF device.
#if 0
if (SkBaseDevice::kGeneral_Usage == info.fUsage) {
@@ -2282,3 +2282,6 @@ SkXPSDevice::SkXPSDevice(IXpsOMObjectFactory* xpsFactory)
"Could not create canvas for layer.");
}
+bool SkXPSDevice::allowImageFilter(const SkImageFilter*) {
+ return false;
+}