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

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

Issue 1713723002: Implement accessibility support for CSS-transformed iframes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix gn build Created 4 years, 8 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
« no previous file with comments | « content/common/cc_messages.h ('k') | content/public/common/BUILD.gn » ('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 <stddef.h> 7 #include <stddef.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/numerics/safe_conversions.h" 10 #include "base/numerics/safe_conversions.h"
11 #include "cc/output/compositor_frame.h" 11 #include "cc/output/compositor_frame.h"
12 #include "cc/output/filter_operations.h" 12 #include "cc/output/filter_operations.h"
13 #include "cc/quads/draw_quad.h" 13 #include "cc/quads/draw_quad.h"
14 #include "cc/quads/largest_draw_quad.h" 14 #include "cc/quads/largest_draw_quad.h"
15 #include "cc/quads/render_pass_id.h" 15 #include "cc/quads/render_pass_id.h"
16 #include "content/public/common/common_param_traits.h" 16 #include "content/public/common/common_param_traits.h"
17 #include "third_party/skia/include/core/SkData.h" 17 #include "third_party/skia/include/core/SkData.h"
18 #include "third_party/skia/include/core/SkFlattenableSerialization.h" 18 #include "third_party/skia/include/core/SkFlattenableSerialization.h"
19 #include "ui/gfx/transform.h"
20 19
21 namespace IPC { 20 namespace IPC {
22 21
23 void ParamTraits<cc::FilterOperation>::Write(base::Pickle* m, 22 void ParamTraits<cc::FilterOperation>::Write(base::Pickle* m,
24 const param_type& p) { 23 const param_type& p) {
25 WriteParam(m, p.type()); 24 WriteParam(m, p.type());
26 switch (p.type()) { 25 switch (p.type()) {
27 case cc::FilterOperation::GRAYSCALE: 26 case cc::FilterOperation::GRAYSCALE:
28 case cc::FilterOperation::SEPIA: 27 case cc::FilterOperation::SEPIA:
29 case cc::FilterOperation::SATURATE: 28 case cc::FilterOperation::SATURATE:
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 return true; 248 return true;
250 } 249 }
251 250
252 void ParamTraits<skia::RefPtr<SkImageFilter> >::Log( 251 void ParamTraits<skia::RefPtr<SkImageFilter> >::Log(
253 const param_type& p, std::string* l) { 252 const param_type& p, std::string* l) {
254 l->append("("); 253 l->append("(");
255 LogParam(p.get() ? p->countInputs() : 0, l); 254 LogParam(p.get() ? p->countInputs() : 0, l);
256 l->append(")"); 255 l->append(")");
257 } 256 }
258 257
259 void ParamTraits<gfx::Transform>::Write(base::Pickle* m, const param_type& p) {
260 #ifdef SK_MSCALAR_IS_FLOAT
261 float column_major_data[16];
262 p.matrix().asColMajorf(column_major_data);
263 #else
264 double column_major_data[16];
265 p.matrix().asColMajord(column_major_data);
266 #endif
267 m->WriteBytes(&column_major_data, sizeof(SkMScalar) * 16);
268 }
269
270 bool ParamTraits<gfx::Transform>::Read(const base::Pickle* m,
271 base::PickleIterator* iter,
272 param_type* r) {
273 const char* column_major_data;
274 if (!iter->ReadBytes(&column_major_data, sizeof(SkMScalar) * 16))
275 return false;
276 r->matrix().setColMajor(
277 reinterpret_cast<const SkMScalar*>(column_major_data));
278 return true;
279 }
280
281 void ParamTraits<gfx::Transform>::Log(
282 const param_type& p, std::string* l) {
283 #ifdef SK_MSCALAR_IS_FLOAT
284 float row_major_data[16];
285 p.matrix().asRowMajorf(row_major_data);
286 #else
287 double row_major_data[16];
288 p.matrix().asRowMajord(row_major_data);
289 #endif
290 l->append("(");
291 for (int i = 0; i < 16; ++i) {
292 if (i > 0)
293 l->append(", ");
294 LogParam(row_major_data[i], l);
295 }
296 l->append(") ");
297 }
298
299 void ParamTraits<cc::RenderPass>::Write(base::Pickle* m, const param_type& p) { 258 void ParamTraits<cc::RenderPass>::Write(base::Pickle* m, const param_type& p) {
300 WriteParam(m, p.id); 259 WriteParam(m, p.id);
301 WriteParam(m, p.output_rect); 260 WriteParam(m, p.output_rect);
302 WriteParam(m, p.damage_rect); 261 WriteParam(m, p.damage_rect);
303 WriteParam(m, p.transform_to_root_target); 262 WriteParam(m, p.transform_to_root_target);
304 WriteParam(m, p.has_transparent_background); 263 WriteParam(m, p.has_transparent_background);
305 WriteParam(m, base::checked_cast<uint32_t>(p.quad_list.size())); 264 WriteParam(m, base::checked_cast<uint32_t>(p.quad_list.size()));
306 265
307 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter = 266 cc::SharedQuadStateList::ConstIterator shared_quad_state_iter =
308 p.shared_quad_state_list.begin(); 267 p.shared_quad_state_list.begin();
(...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after
846 l->append("TextureDrawQuad::OverlayResources(["); 805 l->append("TextureDrawQuad::OverlayResources([");
847 for (size_t i = 0; i < cc::DrawQuad::Resources::kMaxResourceIdCount; ++i) { 806 for (size_t i = 0; i < cc::DrawQuad::Resources::kMaxResourceIdCount; ++i) {
848 LogParam(p.size_in_pixels[i], l); 807 LogParam(p.size_in_pixels[i], l);
849 if (i < (cc::DrawQuad::Resources::kMaxResourceIdCount - 1)) 808 if (i < (cc::DrawQuad::Resources::kMaxResourceIdCount - 1))
850 l->append(", "); 809 l->append(", ");
851 } 810 }
852 l->append("])"); 811 l->append("])");
853 } 812 }
854 813
855 } // namespace IPC 814 } // namespace IPC
OLDNEW
« no previous file with comments | « content/common/cc_messages.h ('k') | content/public/common/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698