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

Side by Side Diff: cc/layers/nine_patch_layer_impl.cc

Issue 1968363002: SurfaceAggregator should check whether output is secure when drawin (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 | « cc/layers/layer_impl.cc ('k') | cc/layers/painted_scrollbar_layer_impl.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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 "cc/layers/nine_patch_layer_impl.h" 5 #include "cc/layers/nine_patch_layer_impl.h"
6 6
7 #include "base/strings/stringprintf.h" 7 #include "base/strings/stringprintf.h"
8 #include "base/values.h" 8 #include "base/values.h"
9 #include "cc/base/math_util.h" 9 #include "cc/base/math_util.h"
10 #include "cc/quads/texture_draw_quad.h" 10 #include "cc/quads/texture_draw_quad.h"
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 visible_rect = 218 visible_rect =
219 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 219 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
220 layer_top_left); 220 layer_top_left);
221 opaque_rect = opaque ? visible_rect : gfx::Rect(); 221 opaque_rect = opaque ? visible_rect : gfx::Rect();
222 if (!visible_rect.IsEmpty()) { 222 if (!visible_rect.IsEmpty()) {
223 TextureDrawQuad* quad = 223 TextureDrawQuad* quad =
224 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 224 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
225 quad->SetNew(shared_quad_state, layer_top_left, opaque_rect, visible_rect, 225 quad->SetNew(shared_quad_state, layer_top_left, opaque_rect, visible_rect,
226 resource, premultiplied_alpha, uv_top_left.origin(), 226 resource, premultiplied_alpha, uv_top_left.origin(),
227 uv_top_left.bottom_right(), SK_ColorTRANSPARENT, 227 uv_top_left.bottom_right(), SK_ColorTRANSPARENT,
228 vertex_opacity, flipped, nearest_neighbor_); 228 vertex_opacity, flipped, nearest_neighbor_, false);
229 ValidateQuadResources(quad); 229 ValidateQuadResources(quad);
230 } 230 }
231 231
232 visible_rect = 232 visible_rect =
233 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 233 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
234 layer_top_right); 234 layer_top_right);
235 opaque_rect = opaque ? visible_rect : gfx::Rect(); 235 opaque_rect = opaque ? visible_rect : gfx::Rect();
236 if (!visible_rect.IsEmpty()) { 236 if (!visible_rect.IsEmpty()) {
237 TextureDrawQuad* quad = 237 TextureDrawQuad* quad =
238 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 238 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
239 quad->SetNew(shared_quad_state, layer_top_right, opaque_rect, visible_rect, 239 quad->SetNew(shared_quad_state, layer_top_right, opaque_rect, visible_rect,
240 resource, premultiplied_alpha, uv_top_right.origin(), 240 resource, premultiplied_alpha, uv_top_right.origin(),
241 uv_top_right.bottom_right(), SK_ColorTRANSPARENT, 241 uv_top_right.bottom_right(), SK_ColorTRANSPARENT,
242 vertex_opacity, flipped, nearest_neighbor_); 242 vertex_opacity, flipped, nearest_neighbor_, false);
243 ValidateQuadResources(quad); 243 ValidateQuadResources(quad);
244 } 244 }
245 245
246 visible_rect = 246 visible_rect =
247 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 247 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
248 layer_bottom_left); 248 layer_bottom_left);
249 opaque_rect = opaque ? visible_rect : gfx::Rect(); 249 opaque_rect = opaque ? visible_rect : gfx::Rect();
250 if (!visible_rect.IsEmpty()) { 250 if (!visible_rect.IsEmpty()) {
251 TextureDrawQuad* quad = 251 TextureDrawQuad* quad =
252 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 252 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
253 quad->SetNew(shared_quad_state, layer_bottom_left, opaque_rect, 253 quad->SetNew(shared_quad_state, layer_bottom_left, opaque_rect,
254 visible_rect, resource, premultiplied_alpha, 254 visible_rect, resource, premultiplied_alpha,
255 uv_bottom_left.origin(), uv_bottom_left.bottom_right(), 255 uv_bottom_left.origin(), uv_bottom_left.bottom_right(),
256 SK_ColorTRANSPARENT, vertex_opacity, flipped, 256 SK_ColorTRANSPARENT, vertex_opacity, flipped,
257 nearest_neighbor_); 257 nearest_neighbor_, false);
258 ValidateQuadResources(quad); 258 ValidateQuadResources(quad);
259 } 259 }
260 260
261 visible_rect = 261 visible_rect =
262 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 262 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
263 layer_bottom_right); 263 layer_bottom_right);
264 opaque_rect = opaque ? visible_rect : gfx::Rect(); 264 opaque_rect = opaque ? visible_rect : gfx::Rect();
265 if (!visible_rect.IsEmpty()) { 265 if (!visible_rect.IsEmpty()) {
266 TextureDrawQuad* quad = 266 TextureDrawQuad* quad =
267 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 267 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
268 quad->SetNew(shared_quad_state, layer_bottom_right, opaque_rect, 268 quad->SetNew(shared_quad_state, layer_bottom_right, opaque_rect,
269 visible_rect, resource, premultiplied_alpha, 269 visible_rect, resource, premultiplied_alpha,
270 uv_bottom_right.origin(), uv_bottom_right.bottom_right(), 270 uv_bottom_right.origin(), uv_bottom_right.bottom_right(),
271 SK_ColorTRANSPARENT, vertex_opacity, flipped, 271 SK_ColorTRANSPARENT, vertex_opacity, flipped,
272 nearest_neighbor_); 272 nearest_neighbor_, false);
273 ValidateQuadResources(quad); 273 ValidateQuadResources(quad);
274 } 274 }
275 275
276 visible_rect = 276 visible_rect =
277 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 277 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
278 layer_top); 278 layer_top);
279 opaque_rect = opaque ? visible_rect : gfx::Rect(); 279 opaque_rect = opaque ? visible_rect : gfx::Rect();
280 if (!visible_rect.IsEmpty()) { 280 if (!visible_rect.IsEmpty()) {
281 TextureDrawQuad* quad = 281 TextureDrawQuad* quad =
282 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 282 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
283 quad->SetNew(shared_quad_state, layer_top, opaque_rect, visible_rect, 283 quad->SetNew(shared_quad_state, layer_top, opaque_rect, visible_rect,
284 resource, premultiplied_alpha, uv_top.origin(), 284 resource, premultiplied_alpha, uv_top.origin(),
285 uv_top.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity, 285 uv_top.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity,
286 flipped, nearest_neighbor_); 286 flipped, nearest_neighbor_, false);
287 ValidateQuadResources(quad); 287 ValidateQuadResources(quad);
288 } 288 }
289 289
290 visible_rect = 290 visible_rect =
291 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 291 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
292 layer_left); 292 layer_left);
293 opaque_rect = opaque ? visible_rect : gfx::Rect(); 293 opaque_rect = opaque ? visible_rect : gfx::Rect();
294 if (!visible_rect.IsEmpty()) { 294 if (!visible_rect.IsEmpty()) {
295 TextureDrawQuad* quad = 295 TextureDrawQuad* quad =
296 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 296 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
297 quad->SetNew(shared_quad_state, layer_left, opaque_rect, visible_rect, 297 quad->SetNew(shared_quad_state, layer_left, opaque_rect, visible_rect,
298 resource, premultiplied_alpha, uv_left.origin(), 298 resource, premultiplied_alpha, uv_left.origin(),
299 uv_left.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity, 299 uv_left.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity,
300 flipped, nearest_neighbor_); 300 flipped, nearest_neighbor_, false);
301 ValidateQuadResources(quad); 301 ValidateQuadResources(quad);
302 } 302 }
303 303
304 visible_rect = 304 visible_rect =
305 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 305 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
306 layer_right); 306 layer_right);
307 opaque_rect = opaque ? visible_rect : gfx::Rect(); 307 opaque_rect = opaque ? visible_rect : gfx::Rect();
308 if (!visible_rect.IsEmpty()) { 308 if (!visible_rect.IsEmpty()) {
309 TextureDrawQuad* quad = 309 TextureDrawQuad* quad =
310 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 310 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
311 quad->SetNew(shared_quad_state, layer_right, opaque_rect, layer_right, 311 quad->SetNew(shared_quad_state, layer_right, opaque_rect, layer_right,
312 resource, premultiplied_alpha, uv_right.origin(), 312 resource, premultiplied_alpha, uv_right.origin(),
313 uv_right.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity, 313 uv_right.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity,
314 flipped, nearest_neighbor_); 314 flipped, nearest_neighbor_, false);
315 ValidateQuadResources(quad); 315 ValidateQuadResources(quad);
316 } 316 }
317 317
318 visible_rect = 318 visible_rect =
319 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 319 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
320 layer_bottom); 320 layer_bottom);
321 opaque_rect = opaque ? visible_rect : gfx::Rect(); 321 opaque_rect = opaque ? visible_rect : gfx::Rect();
322 if (!visible_rect.IsEmpty()) { 322 if (!visible_rect.IsEmpty()) {
323 TextureDrawQuad* quad = 323 TextureDrawQuad* quad =
324 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 324 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
325 quad->SetNew(shared_quad_state, layer_bottom, opaque_rect, visible_rect, 325 quad->SetNew(shared_quad_state, layer_bottom, opaque_rect, visible_rect,
326 resource, premultiplied_alpha, uv_bottom.origin(), 326 resource, premultiplied_alpha, uv_bottom.origin(),
327 uv_bottom.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity, 327 uv_bottom.bottom_right(), SK_ColorTRANSPARENT, vertex_opacity,
328 flipped, nearest_neighbor_); 328 flipped, nearest_neighbor_, false);
329 ValidateQuadResources(quad); 329 ValidateQuadResources(quad);
330 } 330 }
331 331
332 if (fill_center_) { 332 if (fill_center_) {
333 visible_rect = 333 visible_rect =
334 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect( 334 draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
335 layer_center); 335 layer_center);
336 opaque_rect = opaque ? visible_rect : gfx::Rect(); 336 opaque_rect = opaque ? visible_rect : gfx::Rect();
337 if (!visible_rect.IsEmpty()) { 337 if (!visible_rect.IsEmpty()) {
338 TextureDrawQuad* quad = 338 TextureDrawQuad* quad =
339 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 339 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
340 quad->SetNew(shared_quad_state, layer_center, opaque_rect, visible_rect, 340 quad->SetNew(shared_quad_state, layer_center, opaque_rect, visible_rect,
341 resource, premultiplied_alpha, uv_center.origin(), 341 resource, premultiplied_alpha, uv_center.origin(),
342 uv_center.bottom_right(), SK_ColorTRANSPARENT, 342 uv_center.bottom_right(), SK_ColorTRANSPARENT,
343 vertex_opacity, flipped, nearest_neighbor_); 343 vertex_opacity, flipped, nearest_neighbor_, false);
344 ValidateQuadResources(quad); 344 ValidateQuadResources(quad);
345 } 345 }
346 } 346 }
347 } 347 }
348 348
349 const char* NinePatchLayerImpl::LayerTypeAsString() const { 349 const char* NinePatchLayerImpl::LayerTypeAsString() const {
350 return "cc::NinePatchLayerImpl"; 350 return "cc::NinePatchLayerImpl";
351 } 351 }
352 352
353 base::DictionaryValue* NinePatchLayerImpl::LayerTreeAsJson() const { 353 base::DictionaryValue* NinePatchLayerImpl::LayerTreeAsJson() const {
(...skipping 12 matching lines...) Expand all
366 result->Set("ImageBounds", list); 366 result->Set("ImageBounds", list);
367 367
368 result->Set("Border", MathUtil::AsValue(border_).release()); 368 result->Set("Border", MathUtil::AsValue(border_).release());
369 369
370 result->SetBoolean("FillCenter", fill_center_); 370 result->SetBoolean("FillCenter", fill_center_);
371 371
372 return result; 372 return result;
373 } 373 }
374 374
375 } // namespace cc 375 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/layer_impl.cc ('k') | cc/layers/painted_scrollbar_layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698