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

Side by Side Diff: content/common/cc_messages.cc

Issue 11308153: Migrate most of cc/ from WebKit::WebTransformationMatrix to gfx::Transform (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Patch for landing Created 8 years 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 | Annotate | Revision Log
« no previous file with comments | « content/common/cc_messages.h ('k') | content/common/cc_messages_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "content/public/common/common_param_traits.h" 7 #include "content/public/common/common_param_traits.h"
8 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h" 8 #include "third_party/WebKit/Source/Platform/chromium/public/WebData.h"
9 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations .h" 9 #include "third_party/WebKit/Source/Platform/chromium/public/WebFilterOperations .h"
10 #include "third_party/WebKit/Source/Platform/chromium/public/WebTransformationMa trix.h" 10 #include "ui/gfx/transform.h"
11 11
12 namespace IPC { 12 namespace IPC {
13 13
14 void ParamTraits<WebKit::WebData>::Write(Message* m, const param_type& p) { 14 void ParamTraits<WebKit::WebData>::Write(Message* m, const param_type& p) {
15 if (p.isEmpty()) { 15 if (p.isEmpty()) {
16 m->WriteData(NULL, 0); 16 m->WriteData(NULL, 0);
17 } else { 17 } else {
18 m->WriteData(p.data(), p.size()); 18 m->WriteData(p.data(), p.size());
19 } 19 }
20 } 20 }
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 const param_type& p, std::string* l) { 201 const param_type& p, std::string* l) {
202 l->append("("); 202 l->append("(");
203 for (std::size_t i = 0; i < p.size(); ++i) { 203 for (std::size_t i = 0; i < p.size(); ++i) {
204 if (i) 204 if (i)
205 l->append(", "); 205 l->append(", ");
206 LogParam(p.at(i), l); 206 LogParam(p.at(i), l);
207 } 207 }
208 l->append(")"); 208 l->append(")");
209 } 209 }
210 210
211 void ParamTraits<WebKit::WebTransformationMatrix>::Write( 211 void ParamTraits<gfx::Transform>::Write(
212 Message* m, const param_type& p) { 212 Message* m, const param_type& p) {
213 WriteParam(m, p.m11()); 213 WriteParam(m, p.matrix().getDouble(0, 0));
214 WriteParam(m, p.m12()); 214 WriteParam(m, p.matrix().getDouble(1, 0));
215 WriteParam(m, p.m13()); 215 WriteParam(m, p.matrix().getDouble(2, 0));
216 WriteParam(m, p.m14()); 216 WriteParam(m, p.matrix().getDouble(3, 0));
217 WriteParam(m, p.m21()); 217 WriteParam(m, p.matrix().getDouble(0, 1));
218 WriteParam(m, p.m22()); 218 WriteParam(m, p.matrix().getDouble(1, 1));
219 WriteParam(m, p.m23()); 219 WriteParam(m, p.matrix().getDouble(2, 1));
220 WriteParam(m, p.m24()); 220 WriteParam(m, p.matrix().getDouble(3, 1));
221 WriteParam(m, p.m31()); 221 WriteParam(m, p.matrix().getDouble(0, 2));
222 WriteParam(m, p.m32()); 222 WriteParam(m, p.matrix().getDouble(1, 2));
223 WriteParam(m, p.m33()); 223 WriteParam(m, p.matrix().getDouble(2, 2));
224 WriteParam(m, p.m34()); 224 WriteParam(m, p.matrix().getDouble(3, 2));
225 WriteParam(m, p.m41()); 225 WriteParam(m, p.matrix().getDouble(0, 3));
226 WriteParam(m, p.m42()); 226 WriteParam(m, p.matrix().getDouble(1, 3));
227 WriteParam(m, p.m43()); 227 WriteParam(m, p.matrix().getDouble(2, 3));
228 WriteParam(m, p.m44()); 228 WriteParam(m, p.matrix().getDouble(3, 3));
229 } 229 }
230 230
231 bool ParamTraits<WebKit::WebTransformationMatrix>::Read( 231 bool ParamTraits<gfx::Transform>::Read(
232 const Message* m, PickleIterator* iter, param_type* r) { 232 const Message* m, PickleIterator* iter, param_type* r) {
233 // Note: In this function, "m12" means 1st row, 2nd column of the matrix.
234 // This is consistent with Skia's row-column notation, but backwards from
235 // WebCore's column-row notation.
233 double m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, 236 double m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34,
234 m41, m42, m43, m44; 237 m41, m42, m43, m44;
238
235 bool success = 239 bool success =
236 ReadParam(m, iter, &m11) && 240 ReadParam(m, iter, &m11) &&
241 ReadParam(m, iter, &m21) &&
242 ReadParam(m, iter, &m31) &&
243 ReadParam(m, iter, &m41) &&
237 ReadParam(m, iter, &m12) && 244 ReadParam(m, iter, &m12) &&
245 ReadParam(m, iter, &m22) &&
246 ReadParam(m, iter, &m32) &&
247 ReadParam(m, iter, &m42) &&
238 ReadParam(m, iter, &m13) && 248 ReadParam(m, iter, &m13) &&
249 ReadParam(m, iter, &m23) &&
250 ReadParam(m, iter, &m33) &&
251 ReadParam(m, iter, &m43) &&
239 ReadParam(m, iter, &m14) && 252 ReadParam(m, iter, &m14) &&
240 ReadParam(m, iter, &m21) &&
241 ReadParam(m, iter, &m22) &&
242 ReadParam(m, iter, &m23) &&
243 ReadParam(m, iter, &m24) && 253 ReadParam(m, iter, &m24) &&
244 ReadParam(m, iter, &m31) &&
245 ReadParam(m, iter, &m32) &&
246 ReadParam(m, iter, &m33) &&
247 ReadParam(m, iter, &m34) && 254 ReadParam(m, iter, &m34) &&
248 ReadParam(m, iter, &m41) &&
249 ReadParam(m, iter, &m42) &&
250 ReadParam(m, iter, &m43) &&
251 ReadParam(m, iter, &m44); 255 ReadParam(m, iter, &m44);
252 256
253 if (success) { 257 if (success) {
254 r->setM11(m11); 258 r->matrix().setDouble(0, 0, m11);
255 r->setM12(m12); 259 r->matrix().setDouble(1, 0, m21);
256 r->setM13(m13); 260 r->matrix().setDouble(2, 0, m31);
257 r->setM14(m14); 261 r->matrix().setDouble(3, 0, m41);
258 r->setM21(m21); 262 r->matrix().setDouble(0, 1, m12);
259 r->setM22(m22); 263 r->matrix().setDouble(1, 1, m22);
260 r->setM23(m23); 264 r->matrix().setDouble(2, 1, m32);
261 r->setM24(m24); 265 r->matrix().setDouble(3, 1, m42);
262 r->setM31(m31); 266 r->matrix().setDouble(0, 2, m13);
263 r->setM32(m32); 267 r->matrix().setDouble(1, 2, m23);
264 r->setM33(m33); 268 r->matrix().setDouble(2, 2, m33);
265 r->setM34(m34); 269 r->matrix().setDouble(3, 2, m43);
266 r->setM41(m41); 270 r->matrix().setDouble(0, 3, m14);
267 r->setM42(m42); 271 r->matrix().setDouble(1, 3, m24);
268 r->setM43(m43); 272 r->matrix().setDouble(2, 3, m34);
269 r->setM44(m44); 273 r->matrix().setDouble(3, 3, m44);
270 } 274 }
271 275
272 return success; 276 return success;
273 } 277 }
274 278
275 void ParamTraits<WebKit::WebTransformationMatrix>::Log( 279 void ParamTraits<gfx::Transform>::Log(
276 const param_type& p, std::string* l) { 280 const param_type& p, std::string* l) {
277 l->append("("); 281 l->append("(");
278 LogParam(p.m11(), l); 282 LogParam(p.matrix().getDouble(0, 0), l);
279 l->append(", "); 283 l->append(", ");
280 LogParam(p.m12(), l); 284 LogParam(p.matrix().getDouble(1, 0), l);
281 l->append(", "); 285 l->append(", ");
282 LogParam(p.m13(), l); 286 LogParam(p.matrix().getDouble(2, 0), l);
283 l->append(", "); 287 l->append(", ");
284 LogParam(p.m14(), l); 288 LogParam(p.matrix().getDouble(3, 0), l);
285 l->append(", "); 289 l->append(", ");
286 LogParam(p.m21(), l); 290 LogParam(p.matrix().getDouble(0, 1), l);
287 l->append(", "); 291 l->append(", ");
288 LogParam(p.m22(), l); 292 LogParam(p.matrix().getDouble(1, 1), l);
289 l->append(", "); 293 l->append(", ");
290 LogParam(p.m23(), l); 294 LogParam(p.matrix().getDouble(2, 1), l);
291 l->append(", "); 295 l->append(", ");
292 LogParam(p.m24(), l); 296 LogParam(p.matrix().getDouble(3, 1), l);
293 l->append(", "); 297 l->append(", ");
294 LogParam(p.m31(), l); 298 LogParam(p.matrix().getDouble(0, 2), l);
295 l->append(", "); 299 l->append(", ");
296 LogParam(p.m32(), l); 300 LogParam(p.matrix().getDouble(1, 2), l);
297 l->append(", "); 301 l->append(", ");
298 LogParam(p.m33(), l); 302 LogParam(p.matrix().getDouble(2, 2), l);
299 l->append(", "); 303 l->append(", ");
300 LogParam(p.m34(), l); 304 LogParam(p.matrix().getDouble(3, 2), l);
301 l->append(", "); 305 l->append(", ");
302 LogParam(p.m41(), l); 306 LogParam(p.matrix().getDouble(0, 3), l);
303 l->append(", "); 307 l->append(", ");
304 LogParam(p.m42(), l); 308 LogParam(p.matrix().getDouble(1, 3), l);
305 l->append(", "); 309 l->append(", ");
306 LogParam(p.m43(), l); 310 LogParam(p.matrix().getDouble(2, 3), l);
307 l->append(", "); 311 l->append(", ");
308 LogParam(p.m44(), l); 312 LogParam(p.matrix().getDouble(3, 3), l);
309 l->append(") "); 313 l->append(") ");
310 } 314 }
311 315
312 void ParamTraits<cc::RenderPass>::Write( 316 void ParamTraits<cc::RenderPass>::Write(
313 Message* m, const param_type& p) { 317 Message* m, const param_type& p) {
314 WriteParam(m, p.id); 318 WriteParam(m, p.id);
315 WriteParam(m, p.output_rect); 319 WriteParam(m, p.output_rect);
316 WriteParam(m, p.damage_rect); 320 WriteParam(m, p.damage_rect);
317 WriteParam(m, p.transform_to_root_target); 321 WriteParam(m, p.transform_to_root_target);
318 WriteParam(m, p.has_transparent_background); 322 WriteParam(m, p.has_transparent_background);
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
399 if (!ReadParam(m, iter, quad.get())) 403 if (!ReadParam(m, iter, quad.get()))
400 return scoped_ptr<QuadType>(NULL).template PassAs<cc::DrawQuad>(); 404 return scoped_ptr<QuadType>(NULL).template PassAs<cc::DrawQuad>();
401 return quad.template PassAs<cc::DrawQuad>(); 405 return quad.template PassAs<cc::DrawQuad>();
402 } 406 }
403 407
404 bool ParamTraits<cc::RenderPass>::Read( 408 bool ParamTraits<cc::RenderPass>::Read(
405 const Message* m, PickleIterator* iter, param_type* p) { 409 const Message* m, PickleIterator* iter, param_type* p) {
406 cc::RenderPass::Id id(-1, -1); 410 cc::RenderPass::Id id(-1, -1);
407 gfx::Rect output_rect; 411 gfx::Rect output_rect;
408 gfx::RectF damage_rect; 412 gfx::RectF damage_rect;
409 WebKit::WebTransformationMatrix transform_to_root_target; 413 gfx::Transform transform_to_root_target;
410 bool has_transparent_background; 414 bool has_transparent_background;
411 bool has_occlusion_from_outside_target_surface; 415 bool has_occlusion_from_outside_target_surface;
412 WebKit::WebFilterOperations filters; 416 WebKit::WebFilterOperations filters;
413 WebKit::WebFilterOperations background_filters; 417 WebKit::WebFilterOperations background_filters;
414 size_t shared_quad_state_list_size; 418 size_t shared_quad_state_list_size;
415 size_t quad_list_size; 419 size_t quad_list_size;
416 420
417 if (!ReadParam(m, iter, &id) || 421 if (!ReadParam(m, iter, &id) ||
418 !ReadParam(m, iter, &output_rect) || 422 !ReadParam(m, iter, &output_rect) ||
419 !ReadParam(m, iter, &damage_rect) || 423 !ReadParam(m, iter, &damage_rect) ||
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
564 LogParam(*cc::YUVVideoDrawQuad::MaterialCast(quad), l); 568 LogParam(*cc::YUVVideoDrawQuad::MaterialCast(quad), l);
565 break; 569 break;
566 case cc::DrawQuad::INVALID: 570 case cc::DrawQuad::INVALID:
567 break; 571 break;
568 } 572 }
569 } 573 }
570 l->append("])"); 574 l->append("])");
571 } 575 }
572 576
573 } // namespace IPC 577 } // namespace IPC
OLDNEW
« no previous file with comments | « content/common/cc_messages.h ('k') | content/common/cc_messages_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698