OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
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 |
11 * notice, this list of conditions and the following disclaimer in the | 11 * notice, this list of conditions and the following disclaimer in the |
12 * documentation and/or other materials provided with the distribution. | 12 * documentation and/or other materials provided with the distribution. |
13 * | 13 * |
14 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY | 14 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY |
15 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 15 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
16 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 16 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
17 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY | 17 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
18 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 18 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
19 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 19 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
20 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | 20 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
21 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 21 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 */ | 24 */ |
25 | 25 |
26 #include "config.h" | 26 #include "config.h" |
| 27 #include "public/common/WebFilterOperations.h" |
27 | 28 |
| 29 #include "public/common/WebFilterOperation.h" |
| 30 #include "wtf/Vector.h" |
28 #include <cmath> | 31 #include <cmath> |
29 #include "public/platform/WebFilterOperation.h" | |
30 #include "public/platform/WebFilterOperations.h" | |
31 #include <wtf/Vector.h> | |
32 | 32 |
33 namespace WebKit { | 33 namespace WebKit { |
34 | 34 |
35 class WebFilterOperationsPrivate { | 35 class WebFilterOperationsPrivate { |
36 public: | 36 public: |
37 Vector<WebFilterOperation> operations; | 37 Vector<WebFilterOperation> operations; |
38 }; | 38 }; |
39 | 39 |
40 | 40 |
41 void WebFilterOperations::initialize() | 41 void WebFilterOperations::initialize() |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 for (size_t i = 0; i < m_private->operations.size(); ++i) { | 93 for (size_t i = 0; i < m_private->operations.size(); ++i) { |
94 const WebFilterOperation op = m_private->operations[i]; | 94 const WebFilterOperation op = m_private->operations[i]; |
95 if (op.type() == WebFilterOperation::FilterTypeBlur || op.type() == WebF
ilterOperation::FilterTypeDropShadow) { | 95 if (op.type() == WebFilterOperation::FilterTypeBlur || op.type() == WebF
ilterOperation::FilterTypeDropShadow) { |
96 int spread = spreadForStdDeviation(op.amount()); | 96 int spread = spreadForStdDeviation(op.amount()); |
97 if (op.type() == WebFilterOperation::FilterTypeBlur) { | 97 if (op.type() == WebFilterOperation::FilterTypeBlur) { |
98 top += spread; | 98 top += spread; |
99 right += spread; | 99 right += spread; |
100 bottom += spread; | 100 bottom += spread; |
101 left += spread; | 101 left += spread; |
102 } else { | 102 } else { |
103 top += spread - op.dropShadowOffset().y; | 103 top += spread - op.dropShadowOffsetY(); |
104 right += spread + op.dropShadowOffset().x; | 104 right += spread + op.dropShadowOffsetX(); |
105 bottom += spread + op.dropShadowOffset().y; | 105 bottom += spread + op.dropShadowOffsetY(); |
106 left += spread - op.dropShadowOffset().x; | 106 left += spread - op.dropShadowOffsetX(); |
107 } | 107 } |
108 } | 108 } |
109 } | 109 } |
110 } | 110 } |
111 | 111 |
112 bool WebFilterOperations::hasFilterThatMovesPixels() const | 112 bool WebFilterOperations::hasFilterThatMovesPixels() const |
113 { | 113 { |
114 for (size_t i = 0; i < m_private->operations.size(); ++i) { | 114 for (size_t i = 0; i < m_private->operations.size(); ++i) { |
115 const WebFilterOperation op = m_private->operations[i]; | 115 const WebFilterOperation op = m_private->operations[i]; |
116 switch (op.type()) { | 116 switch (op.type()) { |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 { | 154 { |
155 return m_private->operations.size(); | 155 return m_private->operations.size(); |
156 } | 156 } |
157 | 157 |
158 WebFilterOperation WebFilterOperations::at(size_t i) const | 158 WebFilterOperation WebFilterOperations::at(size_t i) const |
159 { | 159 { |
160 return m_private->operations.at(i); | 160 return m_private->operations.at(i); |
161 } | 161 } |
162 | 162 |
163 } // namespace WebKit | 163 } // namespace WebKit |
OLD | NEW |