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

Side by Side Diff: cc/trees/layer_tree_host_impl.cc

Issue 23455060: mix-blend-mode implementation for accelerated layers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 7 years, 1 month 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
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 591 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 602
603 gfx::Rect root_target_rect = root_layer->render_surface()->content_rect(); 603 gfx::Rect root_target_rect = root_layer->render_surface()->content_rect();
604 float opacity = 1.f; 604 float opacity = 1.f;
605 SharedQuadState* shared_quad_state = 605 SharedQuadState* shared_quad_state =
606 quad_culler.UseSharedQuadState(SharedQuadState::Create()); 606 quad_culler.UseSharedQuadState(SharedQuadState::Create());
607 shared_quad_state->SetAll(root_layer->draw_transform(), 607 shared_quad_state->SetAll(root_layer->draw_transform(),
608 root_target_rect.size(), 608 root_target_rect.size(),
609 root_target_rect, 609 root_target_rect,
610 root_target_rect, 610 root_target_rect,
611 false, 611 false,
612 opacity); 612 opacity,
613 SkXfermode::kSrcOver_Mode);
613 614
614 AppendQuadsData append_quads_data; 615 AppendQuadsData append_quads_data;
615 616
616 gfx::Transform transform_to_layer_space(gfx::Transform::kSkipInitialization); 617 gfx::Transform transform_to_layer_space(gfx::Transform::kSkipInitialization);
617 bool did_invert = root_layer->screen_space_transform().GetInverse( 618 bool did_invert = root_layer->screen_space_transform().GetInverse(
618 &transform_to_layer_space); 619 &transform_to_layer_space);
619 DCHECK(did_invert); 620 DCHECK(did_invert);
620 for (Region::Iterator fill_rects(screen_background_color_region); 621 for (Region::Iterator fill_rects(screen_background_color_region);
621 fill_rects.has_rect(); 622 fill_rects.has_rect();
622 fill_rects.next()) { 623 fill_rects.next()) {
(...skipping 2219 matching lines...) Expand 10 before | Expand all | Expand 10 after
2842 if (evicted_ui_resources_.empty()) 2843 if (evicted_ui_resources_.empty())
2843 client_->OnCanDrawStateChanged(CanDraw()); 2844 client_->OnCanDrawStateChanged(CanDraw());
2844 } 2845 }
2845 2846
2846 void LayerTreeHostImpl::ScheduleMicroBenchmark( 2847 void LayerTreeHostImpl::ScheduleMicroBenchmark(
2847 scoped_ptr<MicroBenchmarkImpl> benchmark) { 2848 scoped_ptr<MicroBenchmarkImpl> benchmark) {
2848 micro_benchmark_controller_.ScheduleRun(benchmark.Pass()); 2849 micro_benchmark_controller_.ScheduleRun(benchmark.Pass());
2849 } 2850 }
2850 2851
2851 } // namespace cc 2852 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698