OLD | NEW |
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/browser/renderer_host/compositor_impl_android.h" | 5 #include "content/browser/renderer_host/compositor_impl_android.h" |
6 | 6 |
7 #include <android/bitmap.h> | 7 #include <android/bitmap.h> |
8 #include <android/native_window_jni.h> | 8 #include <android/native_window_jni.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 #include <unordered_set> | 10 #include <unordered_set> |
(...skipping 26 matching lines...) Expand all Loading... |
37 #include "cc/output/output_surface.h" | 37 #include "cc/output/output_surface.h" |
38 #include "cc/output/output_surface_client.h" | 38 #include "cc/output/output_surface_client.h" |
39 #include "cc/output/texture_mailbox_deleter.h" | 39 #include "cc/output/texture_mailbox_deleter.h" |
40 #include "cc/output/vulkan_in_process_context_provider.h" | 40 #include "cc/output/vulkan_in_process_context_provider.h" |
41 #include "cc/raster/single_thread_task_graph_runner.h" | 41 #include "cc/raster/single_thread_task_graph_runner.h" |
42 #include "cc/scheduler/begin_frame_source.h" | 42 #include "cc/scheduler/begin_frame_source.h" |
43 #include "cc/surfaces/display.h" | 43 #include "cc/surfaces/display.h" |
44 #include "cc/surfaces/display_scheduler.h" | 44 #include "cc/surfaces/display_scheduler.h" |
45 #include "cc/surfaces/surface_display_output_surface.h" | 45 #include "cc/surfaces/surface_display_output_surface.h" |
46 #include "cc/surfaces/surface_id_allocator.h" | 46 #include "cc/surfaces/surface_id_allocator.h" |
| 47 #include "cc/surfaces/surface_sequence_generator.h" |
47 #include "cc/trees/layer_tree_host.h" | 48 #include "cc/trees/layer_tree_host.h" |
48 #include "cc/trees/layer_tree_settings.h" | 49 #include "cc/trees/layer_tree_settings.h" |
49 #include "components/display_compositor/compositor_overlay_candidate_validator_a
ndroid.h" | 50 #include "components/display_compositor/compositor_overlay_candidate_validator_a
ndroid.h" |
50 #include "components/display_compositor/gl_helper.h" | 51 #include "components/display_compositor/gl_helper.h" |
51 #include "content/browser/android/child_process_launcher_android.h" | 52 #include "content/browser/android/child_process_launcher_android.h" |
52 #include "content/browser/gpu/browser_gpu_memory_buffer_manager.h" | 53 #include "content/browser/gpu/browser_gpu_memory_buffer_manager.h" |
53 #include "content/browser/gpu/compositor_util.h" | 54 #include "content/browser/gpu/compositor_util.h" |
54 #include "content/browser/gpu/gpu_surface_tracker.h" | 55 #include "content/browser/gpu/gpu_surface_tracker.h" |
55 #include "content/browser/renderer_host/context_provider_factory_impl_android.h" | 56 #include "content/browser/renderer_host/context_provider_factory_impl_android.h" |
56 #include "content/browser/renderer_host/render_widget_host_impl.h" | 57 #include "content/browser/renderer_host/render_widget_host_impl.h" |
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
498 params.client = this; | 499 params.client = this; |
499 params.shared_bitmap_manager = HostSharedBitmapManager::current(); | 500 params.shared_bitmap_manager = HostSharedBitmapManager::current(); |
500 params.gpu_memory_buffer_manager = BrowserGpuMemoryBufferManager::current(); | 501 params.gpu_memory_buffer_manager = BrowserGpuMemoryBufferManager::current(); |
501 params.task_graph_runner = g_task_graph_runner.Pointer(); | 502 params.task_graph_runner = g_task_graph_runner.Pointer(); |
502 params.main_task_runner = base::ThreadTaskRunnerHandle::Get(); | 503 params.main_task_runner = base::ThreadTaskRunnerHandle::Get(); |
503 params.settings = &settings; | 504 params.settings = &settings; |
504 params.animation_host = cc::AnimationHost::CreateMainInstance(); | 505 params.animation_host = cc::AnimationHost::CreateMainInstance(); |
505 host_ = cc::LayerTreeHost::CreateSingleThreaded(this, ¶ms); | 506 host_ = cc::LayerTreeHost::CreateSingleThreaded(this, ¶ms); |
506 DCHECK(!host_->IsVisible()); | 507 DCHECK(!host_->IsVisible()); |
507 host_->GetLayerTree()->SetRootLayer(root_window_->GetLayer()); | 508 host_->GetLayerTree()->SetRootLayer(root_window_->GetLayer()); |
508 host_->SetSurfaceClientId(surface_id_allocator_->client_id()); | 509 host_->GetSurfaceSequenceGenerator()->set_surface_client_id( |
| 510 surface_id_allocator_->client_id()); |
509 host_->GetLayerTree()->SetViewportSize(size_); | 511 host_->GetLayerTree()->SetViewportSize(size_); |
510 host_->GetLayerTree()->set_has_transparent_background( | 512 host_->GetLayerTree()->set_has_transparent_background( |
511 has_transparent_background_); | 513 has_transparent_background_); |
512 host_->GetLayerTree()->set_background_color(SK_ColorBLACK); | 514 host_->GetLayerTree()->set_background_color(SK_ColorBLACK); |
513 host_->GetLayerTree()->SetDeviceScaleFactor(device_scale_factor_); | 515 host_->GetLayerTree()->SetDeviceScaleFactor(device_scale_factor_); |
514 | 516 |
515 if (needs_animate_) | 517 if (needs_animate_) |
516 host_->SetNeedsAnimate(); | 518 host_->SetNeedsAnimate(); |
517 } | 519 } |
518 | 520 |
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
817 | 819 |
818 TRACE_EVENT0("compositor", "Compositor::SetNeedsAnimate"); | 820 TRACE_EVENT0("compositor", "Compositor::SetNeedsAnimate"); |
819 host_->SetNeedsAnimate(); | 821 host_->SetNeedsAnimate(); |
820 } | 822 } |
821 | 823 |
822 bool CompositorImpl::HavePendingReadbacks() { | 824 bool CompositorImpl::HavePendingReadbacks() { |
823 return !readback_layer_tree_->children().empty(); | 825 return !readback_layer_tree_->children().empty(); |
824 } | 826 } |
825 | 827 |
826 } // namespace content | 828 } // namespace content |
OLD | NEW |