OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/common/cc_messages.h" | 5 #include "content/common/cc_messages.h" |
6 | 6 |
7 #include "cc/compositor_frame.h" | 7 #include "cc/compositor_frame.h" |
8 #include "content/public/common/common_param_traits.h" | 8 #include "content/public/common/common_param_traits.h" |
9 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h" | 9 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h" |
10 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations
.h" | 10 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations
.h" |
11 #include "ui/gfx/transform.h" | 11 #include "ui/gfx/transform.h" |
12 | 12 |
13 namespace IPC { | 13 namespace IPC { |
14 | 14 |
15 void ParamTraits<WebKit::WebFilterOperation>::Write( | 15 void ParamTraits<WebKit::WebFilterOperation>::Write( |
16 Message* m, const param_type& p) { | 16 Message* m, const param_type& p) { |
17 WriteParam(m, p.type()); | 17 WriteParam(m, p.type()); |
18 switch (p.type()) { | 18 switch (p.type()) { |
19 case WebKit::WebFilterOperation::FilterTypeGrayscale: | 19 case WebKit::WebFilterOperation::FilterTypeGrayscale: |
20 case WebKit::WebFilterOperation::FilterTypeSepia: | 20 case WebKit::WebFilterOperation::FilterTypeSepia: |
21 case WebKit::WebFilterOperation::FilterTypeSaturate: | 21 case WebKit::WebFilterOperation::FilterTypeSaturate: |
22 case WebKit::WebFilterOperation::FilterTypeHueRotate: | 22 case WebKit::WebFilterOperation::FilterTypeHueRotate: |
23 case WebKit::WebFilterOperation::FilterTypeInvert: | 23 case WebKit::WebFilterOperation::FilterTypeInvert: |
24 case WebKit::WebFilterOperation::FilterTypeBrightness: | 24 case WebKit::WebFilterOperation::FilterTypeBrightness: |
| 25 case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: |
25 case WebKit::WebFilterOperation::FilterTypeContrast: | 26 case WebKit::WebFilterOperation::FilterTypeContrast: |
26 case WebKit::WebFilterOperation::FilterTypeOpacity: | 27 case WebKit::WebFilterOperation::FilterTypeOpacity: |
27 case WebKit::WebFilterOperation::FilterTypeBlur: | 28 case WebKit::WebFilterOperation::FilterTypeBlur: |
28 WriteParam(m, p.amount()); | 29 WriteParam(m, p.amount()); |
29 break; | 30 break; |
30 case WebKit::WebFilterOperation::FilterTypeDropShadow: | 31 case WebKit::WebFilterOperation::FilterTypeDropShadow: |
31 WriteParam(m, p.dropShadowOffset()); | 32 WriteParam(m, p.dropShadowOffset()); |
32 WriteParam(m, p.amount()); | 33 WriteParam(m, p.amount()); |
33 WriteParam(m, p.dropShadowColor()); | 34 WriteParam(m, p.dropShadowColor()); |
34 break; | 35 break; |
35 case WebKit::WebFilterOperation::FilterTypeColorMatrix: | 36 case WebKit::WebFilterOperation::FilterTypeColorMatrix: |
36 for (int i = 0; i < 20; ++i) | 37 for (int i = 0; i < 20; ++i) |
37 WriteParam(m, p.matrix()[i]); | 38 WriteParam(m, p.matrix()[i]); |
38 break; | 39 break; |
39 case WebKit::WebFilterOperation::FilterTypeZoom: | 40 case WebKit::WebFilterOperation::FilterTypeZoom: |
40 WriteParam(m, p.zoomRect()); | 41 WriteParam(m, p.zoomRect()); |
41 WriteParam(m, p.amount()); | 42 WriteParam(m, p.amount()); |
42 break; | 43 break; |
43 default: | |
44 // FIXME: temporary place holder to prevent build failures | |
45 // (pending a new FilterType). | |
46 NOTREACHED(); | |
47 break; | |
48 } | 44 } |
49 } | 45 } |
50 | 46 |
51 bool ParamTraits<WebKit::WebFilterOperation>::Read( | 47 bool ParamTraits<WebKit::WebFilterOperation>::Read( |
52 const Message* m, PickleIterator* iter, param_type* r) { | 48 const Message* m, PickleIterator* iter, param_type* r) { |
53 WebKit::WebFilterOperation::FilterType type; | 49 WebKit::WebFilterOperation::FilterType type; |
54 float amount; | 50 float amount; |
55 WebKit::WebPoint dropShadowOffset; | 51 WebKit::WebPoint dropShadowOffset; |
56 WebKit::WebColor dropShadowColor; | 52 WebKit::WebColor dropShadowColor; |
57 SkScalar matrix[20]; | 53 SkScalar matrix[20]; |
58 WebKit::WebRect zoomRect; | 54 WebKit::WebRect zoomRect; |
59 | 55 |
60 if (!ReadParam(m, iter, &type)) | 56 if (!ReadParam(m, iter, &type)) |
61 return false; | 57 return false; |
62 r->setType(type); | 58 r->setType(type); |
63 | 59 |
64 bool success = false; | 60 bool success = false; |
65 switch (type) { | 61 switch (type) { |
66 case WebKit::WebFilterOperation::FilterTypeGrayscale: | 62 case WebKit::WebFilterOperation::FilterTypeGrayscale: |
67 case WebKit::WebFilterOperation::FilterTypeSepia: | 63 case WebKit::WebFilterOperation::FilterTypeSepia: |
68 case WebKit::WebFilterOperation::FilterTypeSaturate: | 64 case WebKit::WebFilterOperation::FilterTypeSaturate: |
69 case WebKit::WebFilterOperation::FilterTypeHueRotate: | 65 case WebKit::WebFilterOperation::FilterTypeHueRotate: |
70 case WebKit::WebFilterOperation::FilterTypeInvert: | 66 case WebKit::WebFilterOperation::FilterTypeInvert: |
71 case WebKit::WebFilterOperation::FilterTypeBrightness: | 67 case WebKit::WebFilterOperation::FilterTypeBrightness: |
| 68 case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: |
72 case WebKit::WebFilterOperation::FilterTypeContrast: | 69 case WebKit::WebFilterOperation::FilterTypeContrast: |
73 case WebKit::WebFilterOperation::FilterTypeOpacity: | 70 case WebKit::WebFilterOperation::FilterTypeOpacity: |
74 case WebKit::WebFilterOperation::FilterTypeBlur: | 71 case WebKit::WebFilterOperation::FilterTypeBlur: |
75 if (ReadParam(m, iter, &amount)) { | 72 if (ReadParam(m, iter, &amount)) { |
76 r->setAmount(amount); | 73 r->setAmount(amount); |
77 success = true; | 74 success = true; |
78 } | 75 } |
79 break; | 76 break; |
80 case WebKit::WebFilterOperation::FilterTypeDropShadow: | 77 case WebKit::WebFilterOperation::FilterTypeDropShadow: |
81 if (ReadParam(m, iter, &dropShadowOffset) && | 78 if (ReadParam(m, iter, &dropShadowOffset) && |
(...skipping 18 matching lines...) Expand all Loading... |
100 break; | 97 break; |
101 } | 98 } |
102 case WebKit::WebFilterOperation::FilterTypeZoom: | 99 case WebKit::WebFilterOperation::FilterTypeZoom: |
103 if (ReadParam(m, iter, &zoomRect) && | 100 if (ReadParam(m, iter, &zoomRect) && |
104 ReadParam(m, iter, &amount)) { | 101 ReadParam(m, iter, &amount)) { |
105 r->setZoomRect(zoomRect); | 102 r->setZoomRect(zoomRect); |
106 r->setAmount(amount); | 103 r->setAmount(amount); |
107 success = true; | 104 success = true; |
108 } | 105 } |
109 break; | 106 break; |
110 default: | |
111 // FIXME: temporary place holder to prevent build failures | |
112 // (pending a new FilterType). | |
113 NOTREACHED(); | |
114 break; | |
115 } | 107 } |
116 return success; | 108 return success; |
117 } | 109 } |
118 | 110 |
119 void ParamTraits<WebKit::WebFilterOperation>::Log( | 111 void ParamTraits<WebKit::WebFilterOperation>::Log( |
120 const param_type& p, std::string* l) { | 112 const param_type& p, std::string* l) { |
121 l->append("("); | 113 l->append("("); |
122 LogParam(static_cast<unsigned>(p.type()), l); | 114 LogParam(static_cast<unsigned>(p.type()), l); |
123 l->append(", "); | 115 l->append(", "); |
124 | 116 |
125 switch (p.type()) { | 117 switch (p.type()) { |
126 case WebKit::WebFilterOperation::FilterTypeGrayscale: | 118 case WebKit::WebFilterOperation::FilterTypeGrayscale: |
127 case WebKit::WebFilterOperation::FilterTypeSepia: | 119 case WebKit::WebFilterOperation::FilterTypeSepia: |
128 case WebKit::WebFilterOperation::FilterTypeSaturate: | 120 case WebKit::WebFilterOperation::FilterTypeSaturate: |
129 case WebKit::WebFilterOperation::FilterTypeHueRotate: | 121 case WebKit::WebFilterOperation::FilterTypeHueRotate: |
130 case WebKit::WebFilterOperation::FilterTypeInvert: | 122 case WebKit::WebFilterOperation::FilterTypeInvert: |
131 case WebKit::WebFilterOperation::FilterTypeBrightness: | 123 case WebKit::WebFilterOperation::FilterTypeBrightness: |
| 124 case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: |
132 case WebKit::WebFilterOperation::FilterTypeContrast: | 125 case WebKit::WebFilterOperation::FilterTypeContrast: |
133 case WebKit::WebFilterOperation::FilterTypeOpacity: | 126 case WebKit::WebFilterOperation::FilterTypeOpacity: |
134 case WebKit::WebFilterOperation::FilterTypeBlur: | 127 case WebKit::WebFilterOperation::FilterTypeBlur: |
135 LogParam(p.amount(), l); | 128 LogParam(p.amount(), l); |
136 break; | 129 break; |
137 case WebKit::WebFilterOperation::FilterTypeDropShadow: | 130 case WebKit::WebFilterOperation::FilterTypeDropShadow: |
138 LogParam(p.dropShadowOffset(), l); | 131 LogParam(p.dropShadowOffset(), l); |
139 l->append(", "); | 132 l->append(", "); |
140 LogParam(p.amount(), l); | 133 LogParam(p.amount(), l); |
141 l->append(", "); | 134 l->append(", "); |
142 LogParam(p.dropShadowColor(), l); | 135 LogParam(p.dropShadowColor(), l); |
143 break; | 136 break; |
144 case WebKit::WebFilterOperation::FilterTypeColorMatrix: | 137 case WebKit::WebFilterOperation::FilterTypeColorMatrix: |
145 for (int i = 0; i < 20; ++i) { | 138 for (int i = 0; i < 20; ++i) { |
146 if (i) | 139 if (i) |
147 l->append(", "); | 140 l->append(", "); |
148 LogParam(p.matrix()[i], l); | 141 LogParam(p.matrix()[i], l); |
149 } | 142 } |
150 break; | 143 break; |
151 case WebKit::WebFilterOperation::FilterTypeZoom: | 144 case WebKit::WebFilterOperation::FilterTypeZoom: |
152 LogParam(p.zoomRect(), l); | 145 LogParam(p.zoomRect(), l); |
153 l->append(", "); | 146 l->append(", "); |
154 LogParam(p.amount(), l); | 147 LogParam(p.amount(), l); |
155 break; | 148 break; |
156 default: | |
157 // FIXME: temporary place holder to prevent build failures | |
158 // (pending a new FilterType). | |
159 NOTREACHED(); | |
160 break; | |
161 } | 149 } |
162 l->append(")"); | 150 l->append(")"); |
163 } | 151 } |
164 | 152 |
165 void ParamTraits<WebKit::WebFilterOperations>::Write( | 153 void ParamTraits<WebKit::WebFilterOperations>::Write( |
166 Message* m, const param_type& p) { | 154 Message* m, const param_type& p) { |
167 WriteParam(m, p.size()); | 155 WriteParam(m, p.size()); |
168 for (std::size_t i = 0; i < p.size(); ++i) { | 156 for (std::size_t i = 0; i < p.size(); ++i) { |
169 WriteParam(m, p.at(i)); | 157 WriteParam(m, p.at(i)); |
170 } | 158 } |
(...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
666 l->append(", ["); | 654 l->append(", ["); |
667 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { | 655 for (size_t i = 0; i < p.render_pass_list.size(); ++i) { |
668 if (i) | 656 if (i) |
669 l->append(", "); | 657 l->append(", "); |
670 LogParam(*p.render_pass_list[i], l); | 658 LogParam(*p.render_pass_list[i], l); |
671 } | 659 } |
672 l->append("])"); | 660 l->append("])"); |
673 } | 661 } |
674 | 662 |
675 } // namespace IPC | 663 } // namespace IPC |
OLD | NEW |