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

Side by Side Diff: third_party/WebKit/Source/core/html/canvas/CanvasImageSource.h

Issue 2351363002: Make CSSStyleImageValue a member of CanvasImageSource. (Closed)
Patch Set: added additional nullptr checks to getSourceImageForCanvas, changed toImageSourceInternal to includ… Created 4 years, 2 months 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008 Apple Computer, Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008 Apple Computer, Inc. All rights reserved.
3 * Copyright (C) 2007 Alp Toker <alp@atoker.com> 3 * Copyright (C) 2007 Alp Toker <alp@atoker.com>
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 class CORE_EXPORT CanvasImageSource { 47 class CORE_EXPORT CanvasImageSource {
48 public: 48 public:
49 virtual PassRefPtr<Image> getSourceImageForCanvas(SourceImageStatus*, Accele rationHint, SnapshotReason, const FloatSize&) const = 0; 49 virtual PassRefPtr<Image> getSourceImageForCanvas(SourceImageStatus*, Accele rationHint, SnapshotReason, const FloatSize&) const = 0;
50 50
51 // IMPORTANT: Result must be independent of whether destinationContext is 51 // IMPORTANT: Result must be independent of whether destinationContext is
52 // already tainted because this function may be used to determine whether 52 // already tainted because this function may be used to determine whether
53 // a CanvasPattern is "origin clean", and that pattern may be used on 53 // a CanvasPattern is "origin clean", and that pattern may be used on
54 // another canvas, which may not be already tainted. 54 // another canvas, which may not be already tainted.
55 virtual bool wouldTaintOrigin(SecurityOrigin* destinationSecurityOrigin) con st = 0; 55 virtual bool wouldTaintOrigin(SecurityOrigin* destinationSecurityOrigin) con st = 0;
56 56
57 virtual bool isCSSImageValue() const { return false; }
57 virtual bool isVideoElement() const { return false; } 58 virtual bool isVideoElement() const { return false; }
58 virtual bool isCanvasElement() const { return false; } 59 virtual bool isCanvasElement() const { return false; }
59 virtual bool isSVGSource() const { return false; } 60 virtual bool isSVGSource() const { return false; }
60 virtual bool isImageBitmap() const { return false; } 61 virtual bool isImageBitmap() const { return false; }
61 virtual bool isOffscreenCanvas() const { return false; } 62 virtual bool isOffscreenCanvas() const { return false; }
62 63
63 // Adjusts the source and destination rectangles for cases where the actual 64 // Adjusts the source and destination rectangles for cases where the actual
64 // source image is a subregion of the image returned by getSourceImageForCan vas. 65 // source image is a subregion of the image returned by getSourceImageForCan vas.
65 virtual void adjustDrawRects(FloatRect* srcRect, FloatRect* dstRect) const { } 66 virtual void adjustDrawRects(FloatRect* srcRect, FloatRect* dstRect) const { }
66 67
67 virtual FloatSize elementSize(const FloatSize& defaultObjectSize) const = 0; 68 virtual FloatSize elementSize(const FloatSize& defaultObjectSize) const = 0;
68 virtual FloatSize defaultDestinationSize(const FloatSize& defaultObjectSize) const { return elementSize(defaultObjectSize); } 69 virtual FloatSize defaultDestinationSize(const FloatSize& defaultObjectSize) const { return elementSize(defaultObjectSize); }
69 virtual const KURL& sourceURL() const { return blankURL(); } 70 virtual const KURL& sourceURL() const { return blankURL(); }
70 virtual bool isOpaque() const { return false; } 71 virtual bool isOpaque() const { return false; }
71 72
72 virtual int sourceWidth() = 0; 73 virtual int sourceWidth() = 0;
73 virtual int sourceHeight() = 0; 74 virtual int sourceHeight() = 0;
74 75
75 protected: 76 protected:
76 virtual ~CanvasImageSource() { } 77 virtual ~CanvasImageSource() { }
77 }; 78 };
78 79
79 } // namespace blink 80 } // namespace blink
80 81
81 #endif 82 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698