Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(795)

Unified Diff: third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp

Issue 2326633002: Adds filter support for offscreen canvas (Closed)
Patch Set: Code using ConversionData Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
diff --git a/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp b/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
index 72000926bf2f48aeef54bd80c41870358ee995d4..268c3bb7f1be61de48ee6c685ad765c0d8127997 100644
--- a/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
+++ b/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp
@@ -53,10 +53,10 @@ void OffscreenCanvasRenderingContext2D::commit(ScriptState* scriptState,
// If an OffscreenCanvas has no associated canvas Id, it indicates that
// it is not an OffscreenCanvas created by transfering control from html
// canvas.
- exceptionState.throwDOMException(InvalidStateError,
- "Commit() was called on a context whose "
- "OffscreenCanvas is not associated with a "
- "canvas element.");
+ exceptionState.throwDOMException(
+ InvalidStateError,
+ "Commit() was called on a context whose OffscreenCanvas is not "
+ "associated with a canvas element.");
return;
}
double commitStartTime = WTF::monotonicallyIncreasingTime();
@@ -78,9 +78,9 @@ bool OffscreenCanvasRenderingContext2D::wouldTaintOrigin(
CanvasImageSource* source,
ExecutionContext* executionContext) {
if (executionContext->isWorkerGlobalScope()) {
- // We only support passing in ImageBitmap and OffscreenCanvases as source
- // images in drawImage() or createPattern() in a OffscreenCanvas2d in
- // worker.
+ // We only support passing in ImageBitmap and OffscreenCanvases as
+ // source images in drawImage() or createPattern() in a
+ // OffscreenCanvas2d in worker.
DCHECK(source->isImageBitmap() || source->isOffscreenCanvas());
}
@@ -218,17 +218,15 @@ AffineTransform OffscreenCanvasRenderingContext2D::baseTransform() const {
void OffscreenCanvasRenderingContext2D::didDraw(const SkIRect& dirtyRect) {}
bool OffscreenCanvasRenderingContext2D::stateHasFilter() {
- // TODO: crbug.com/593838 make hasFilter accept nullptr
- // return state().hasFilter(nullptr, nullptr, IntSize(width(), height()),
- // this);
- return false;
+ return state().hasFilterForOffscreenCanvas(getOffscreenCanvas()->size());
}
sk_sp<SkImageFilter> OffscreenCanvasRenderingContext2D::stateGetFilter() {
- // TODO: make getFilter accept nullptr
- // return state().getFilter(nullptr, nullptr, IntSize(width(), height()),
- // this);
- return nullptr;
+ return state().getFilterForOffscreenCanvas(getOffscreenCanvas()->size());
+}
+
+void OffscreenCanvasRenderingContext2D::setFilter(const String& filterString) {
+ BaseRenderingContext2D::setFilter(filterString);
}
void OffscreenCanvasRenderingContext2D::validateStateStack() const {

Powered by Google App Engine
This is Rietveld 408576698