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

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

Issue 2631453002: Revert of cc: Add image decode queue functionality to image manager. (Closed)
Patch Set: Created 3 years, 11 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/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_in_process.h » ('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 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 <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <cmath> 10 #include <cmath>
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 192
193 virtual bool CreateHostImplWithTaskRunnerProvider( 193 virtual bool CreateHostImplWithTaskRunnerProvider(
194 const LayerTreeSettings& settings, 194 const LayerTreeSettings& settings,
195 std::unique_ptr<CompositorFrameSink> compositor_frame_sink, 195 std::unique_ptr<CompositorFrameSink> compositor_frame_sink,
196 TaskRunnerProvider* task_runner_provider) { 196 TaskRunnerProvider* task_runner_provider) {
197 if (host_impl_) 197 if (host_impl_)
198 host_impl_->ReleaseCompositorFrameSink(); 198 host_impl_->ReleaseCompositorFrameSink();
199 host_impl_ = LayerTreeHostImpl::Create( 199 host_impl_ = LayerTreeHostImpl::Create(
200 settings, this, task_runner_provider, &stats_instrumentation_, 200 settings, this, task_runner_provider, &stats_instrumentation_,
201 &task_graph_runner_, 201 &task_graph_runner_,
202 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0, nullptr); 202 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0);
203 compositor_frame_sink_ = std::move(compositor_frame_sink); 203 compositor_frame_sink_ = std::move(compositor_frame_sink);
204 host_impl_->SetVisible(true); 204 host_impl_->SetVisible(true);
205 bool init = host_impl_->InitializeRenderer(compositor_frame_sink_.get()); 205 bool init = host_impl_->InitializeRenderer(compositor_frame_sink_.get());
206 host_impl_->SetViewportSize(gfx::Size(10, 10)); 206 host_impl_->SetViewportSize(gfx::Size(10, 10));
207 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 1.f); 207 host_impl_->active_tree()->PushPageScaleFromMainThread(1.f, 1.f, 1.f);
208 // Set the BeginFrameArgs so that methods which use it are able to. 208 // Set the BeginFrameArgs so that methods which use it are able to.
209 host_impl_->WillBeginImplFrame(CreateBeginFrameArgsForTesting( 209 host_impl_->WillBeginImplFrame(CreateBeginFrameArgsForTesting(
210 BEGINFRAME_FROM_HERE, 0, 1, 210 BEGINFRAME_FROM_HERE, 0, 1,
211 base::TimeTicks() + base::TimeDelta::FromMilliseconds(1))); 211 base::TimeTicks() + base::TimeDelta::FromMilliseconds(1)));
212 host_impl_->DidFinishImplFrame(); 212 host_impl_->DidFinishImplFrame();
(...skipping 2489 matching lines...) Expand 10 before | Expand all | Expand 10 after
2702 LayerTreeHostImplClient* client, 2702 LayerTreeHostImplClient* client,
2703 TaskRunnerProvider* task_runner_provider, 2703 TaskRunnerProvider* task_runner_provider,
2704 TaskGraphRunner* task_graph_runner, 2704 TaskGraphRunner* task_graph_runner,
2705 RenderingStatsInstrumentation* rendering_stats_instrumentation) 2705 RenderingStatsInstrumentation* rendering_stats_instrumentation)
2706 : LayerTreeHostImpl(settings, 2706 : LayerTreeHostImpl(settings,
2707 client, 2707 client,
2708 task_runner_provider, 2708 task_runner_provider,
2709 rendering_stats_instrumentation, 2709 rendering_stats_instrumentation,
2710 task_graph_runner, 2710 task_graph_runner,
2711 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 2711 AnimationHost::CreateForTesting(ThreadInstance::IMPL),
2712 0, 2712 0) {}
2713 nullptr) {}
2714 2713
2715 BeginFrameArgs CurrentBeginFrameArgs() const override { 2714 BeginFrameArgs CurrentBeginFrameArgs() const override {
2716 return CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 1, 2715 return CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 1,
2717 fake_current_physical_time_); 2716 fake_current_physical_time_);
2718 } 2717 }
2719 2718
2720 void SetCurrentPhysicalTimeTicksForTest(base::TimeTicks fake_now) { 2719 void SetCurrentPhysicalTimeTicksForTest(base::TimeTicks fake_now) {
2721 fake_current_physical_time_ = fake_now; 2720 fake_current_physical_time_ = fake_now;
2722 } 2721 }
2723 2722
(...skipping 4849 matching lines...) Expand 10 before | Expand all | Expand 10 after
7573 compositor_frame_sink.get(); 7572 compositor_frame_sink.get();
7574 7573
7575 // This test creates its own LayerTreeHostImpl, so 7574 // This test creates its own LayerTreeHostImpl, so
7576 // that we can force partial swap enabled. 7575 // that we can force partial swap enabled.
7577 LayerTreeSettings settings = DefaultSettings(); 7576 LayerTreeSettings settings = DefaultSettings();
7578 settings.renderer_settings.partial_swap_enabled = true; 7577 settings.renderer_settings.partial_swap_enabled = true;
7579 std::unique_ptr<LayerTreeHostImpl> layer_tree_host_impl = 7578 std::unique_ptr<LayerTreeHostImpl> layer_tree_host_impl =
7580 LayerTreeHostImpl::Create( 7579 LayerTreeHostImpl::Create(
7581 settings, this, &task_runner_provider_, &stats_instrumentation_, 7580 settings, this, &task_runner_provider_, &stats_instrumentation_,
7582 &task_graph_runner_, 7581 &task_graph_runner_,
7583 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0, nullptr); 7582 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0);
7584 layer_tree_host_impl->SetVisible(true); 7583 layer_tree_host_impl->SetVisible(true);
7585 layer_tree_host_impl->InitializeRenderer(compositor_frame_sink.get()); 7584 layer_tree_host_impl->InitializeRenderer(compositor_frame_sink.get());
7586 layer_tree_host_impl->WillBeginImplFrame( 7585 layer_tree_host_impl->WillBeginImplFrame(
7587 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 2)); 7586 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 2));
7588 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500)); 7587 layer_tree_host_impl->SetViewportSize(gfx::Size(500, 500));
7589 7588
7590 std::unique_ptr<LayerImpl> root = 7589 std::unique_ptr<LayerImpl> root =
7591 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1); 7590 FakeDrawableLayerImpl::Create(layer_tree_host_impl->active_tree(), 1);
7592 root->test_properties()->force_render_surface = true; 7591 root->test_properties()->force_render_surface = true;
7593 std::unique_ptr<LayerImpl> child = 7592 std::unique_ptr<LayerImpl> child =
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
7702 bool partial_swap, 7701 bool partial_swap,
7703 LayerTreeHostImplClient* client, 7702 LayerTreeHostImplClient* client,
7704 TaskRunnerProvider* task_runner_provider, 7703 TaskRunnerProvider* task_runner_provider,
7705 TaskGraphRunner* task_graph_runner, 7704 TaskGraphRunner* task_graph_runner,
7706 RenderingStatsInstrumentation* stats_instrumentation, 7705 RenderingStatsInstrumentation* stats_instrumentation,
7707 CompositorFrameSink* compositor_frame_sink) { 7706 CompositorFrameSink* compositor_frame_sink) {
7708 settings.renderer_settings.partial_swap_enabled = partial_swap; 7707 settings.renderer_settings.partial_swap_enabled = partial_swap;
7709 std::unique_ptr<LayerTreeHostImpl> my_host_impl = LayerTreeHostImpl::Create( 7708 std::unique_ptr<LayerTreeHostImpl> my_host_impl = LayerTreeHostImpl::Create(
7710 settings, client, task_runner_provider, stats_instrumentation, 7709 settings, client, task_runner_provider, stats_instrumentation,
7711 task_graph_runner, AnimationHost::CreateForTesting(ThreadInstance::IMPL), 7710 task_graph_runner, AnimationHost::CreateForTesting(ThreadInstance::IMPL),
7712 0, nullptr); 7711 0);
7713 my_host_impl->SetVisible(true); 7712 my_host_impl->SetVisible(true);
7714 my_host_impl->InitializeRenderer(compositor_frame_sink); 7713 my_host_impl->InitializeRenderer(compositor_frame_sink);
7715 my_host_impl->WillBeginImplFrame( 7714 my_host_impl->WillBeginImplFrame(
7716 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 2)); 7715 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, 0, 2));
7717 my_host_impl->SetViewportSize(gfx::Size(100, 100)); 7716 my_host_impl->SetViewportSize(gfx::Size(100, 100));
7718 7717
7719 /* 7718 /*
7720 Layers are created as follows: 7719 Layers are created as follows:
7721 7720
7722 +--------------------+ 7721 +--------------------+
(...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after
8170 EXPECT_NE(kSoftwareTileCutoff, kNothingTileCutoff); 8169 EXPECT_NE(kSoftwareTileCutoff, kNothingTileCutoff);
8171 8170
8172 LayerTreeSettings settings = DefaultSettings(); 8171 LayerTreeSettings settings = DefaultSettings();
8173 settings.gpu_memory_policy = 8172 settings.gpu_memory_policy =
8174 ManagedMemoryPolicy(kGpuByteLimit, kGpuCutoff, kGpuResourceLimit); 8173 ManagedMemoryPolicy(kGpuByteLimit, kGpuCutoff, kGpuResourceLimit);
8175 settings.software_memory_policy = ManagedMemoryPolicy( 8174 settings.software_memory_policy = ManagedMemoryPolicy(
8176 kSoftwareByteLimit, kSoftwareCutoff, kSoftwareResourceLimit); 8175 kSoftwareByteLimit, kSoftwareCutoff, kSoftwareResourceLimit);
8177 host_impl_ = LayerTreeHostImpl::Create( 8176 host_impl_ = LayerTreeHostImpl::Create(
8178 settings, this, &task_runner_provider_, &stats_instrumentation_, 8177 settings, this, &task_runner_provider_, &stats_instrumentation_,
8179 &task_graph_runner_, 8178 &task_graph_runner_,
8180 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0, nullptr); 8179 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0);
8181 8180
8182 // Gpu compositing. 8181 // Gpu compositing.
8183 compositor_frame_sink_ = 8182 compositor_frame_sink_ =
8184 FakeCompositorFrameSink::Create3d(TestWebGraphicsContext3D::Create()); 8183 FakeCompositorFrameSink::Create3d(TestWebGraphicsContext3D::Create());
8185 host_impl_->SetVisible(true); 8184 host_impl_->SetVisible(true);
8186 host_impl_->InitializeRenderer(compositor_frame_sink_.get()); 8185 host_impl_->InitializeRenderer(compositor_frame_sink_.get());
8187 { 8186 {
8188 const auto& state = host_impl_->global_tile_state(); 8187 const auto& state = host_impl_->global_tile_state();
8189 EXPECT_EQ(kGpuByteLimit, state.hard_memory_limit_in_bytes); 8188 EXPECT_EQ(kGpuByteLimit, state.hard_memory_limit_in_bytes);
8190 EXPECT_EQ(kGpuResourceLimit, state.num_resources_limit); 8189 EXPECT_EQ(kGpuResourceLimit, state.num_resources_limit);
(...skipping 3435 matching lines...) Expand 10 before | Expand all | Expand 10 after
11626 TEST_F(LayerTreeHostImplTest, RecomputeGpuRasterOnCompositorFrameSinkChange) { 11625 TEST_F(LayerTreeHostImplTest, RecomputeGpuRasterOnCompositorFrameSinkChange) {
11627 host_impl_->ReleaseCompositorFrameSink(); 11626 host_impl_->ReleaseCompositorFrameSink();
11628 host_impl_ = nullptr; 11627 host_impl_ = nullptr;
11629 11628
11630 LayerTreeSettings settings = DefaultSettings(); 11629 LayerTreeSettings settings = DefaultSettings();
11631 settings.gpu_rasterization_forced = true; 11630 settings.gpu_rasterization_forced = true;
11632 11631
11633 host_impl_ = LayerTreeHostImpl::Create( 11632 host_impl_ = LayerTreeHostImpl::Create(
11634 settings, this, &task_runner_provider_, &stats_instrumentation_, 11633 settings, this, &task_runner_provider_, &stats_instrumentation_,
11635 &task_graph_runner_, 11634 &task_graph_runner_,
11636 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0, nullptr); 11635 AnimationHost::CreateForTesting(ThreadInstance::IMPL), 0);
11637 host_impl_->SetVisible(true); 11636 host_impl_->SetVisible(true);
11638 11637
11639 // InitializeRenderer with a gpu-raster enabled output surface. 11638 // InitializeRenderer with a gpu-raster enabled output surface.
11640 auto gpu_raster_compositor_frame_sink = 11639 auto gpu_raster_compositor_frame_sink =
11641 FakeCompositorFrameSink::Create3d(TestWebGraphicsContext3D::Create()); 11640 FakeCompositorFrameSink::Create3d(TestWebGraphicsContext3D::Create());
11642 host_impl_->InitializeRenderer(gpu_raster_compositor_frame_sink.get()); 11641 host_impl_->InitializeRenderer(gpu_raster_compositor_frame_sink.get());
11643 EXPECT_TRUE(host_impl_->use_gpu_rasterization()); 11642 EXPECT_TRUE(host_impl_->use_gpu_rasterization());
11644 11643
11645 // Re-initialize with a software output surface. 11644 // Re-initialize with a software output surface.
11646 compositor_frame_sink_ = FakeCompositorFrameSink::CreateSoftware(); 11645 compositor_frame_sink_ = FakeCompositorFrameSink::CreateSoftware();
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
11768 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_over_scrollbar()); 11767 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_over_scrollbar());
11769 host_impl_->MouseMoveAt(gfx::Point(10, 150)); 11768 host_impl_->MouseMoveAt(gfx::Point(10, 150));
11770 EXPECT_TRUE(scrollbar_1_animation_controller->mouse_is_near_scrollbar()); 11769 EXPECT_TRUE(scrollbar_1_animation_controller->mouse_is_near_scrollbar());
11771 EXPECT_TRUE(scrollbar_1_animation_controller->mouse_is_over_scrollbar()); 11770 EXPECT_TRUE(scrollbar_1_animation_controller->mouse_is_over_scrollbar());
11772 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_near_scrollbar()); 11771 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_near_scrollbar());
11773 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_over_scrollbar()); 11772 EXPECT_FALSE(scrollbar_2_animation_controller->mouse_is_over_scrollbar());
11774 } 11773 }
11775 11774
11776 } // namespace 11775 } // namespace
11777 } // namespace cc 11776 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.cc ('k') | cc/trees/layer_tree_host_in_process.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698