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

Unified Diff: content/browser/renderer_host/render_widget_host_view_android.cc

Issue 2118653005: Android: Remove some dead code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Android: Remove some dead code Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_android.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/renderer_host/render_widget_host_view_android.cc
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
index 483c015836abf7da9b5f9511044b966f42833bf6..46129fb5a079b2235d222acac76b54d3aa5a26c3 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -284,6 +284,24 @@ gfx::RectF GetSelectionRect(const ui::TouchSelectionController& controller) {
return rect;
}
+scoped_refptr<cc::SurfaceLayer> CreateSurfaceLayer(
+ const cc::SurfaceId& surface_id,
+ const gfx::Size& size) {
+ DCHECK(!surface_id.is_null());
+ cc::SurfaceManager* manager = CompositorImpl::GetSurfaceManager();
+ DCHECK(manager);
+ // manager must outlive compositors using it.
+ scoped_refptr<cc::SurfaceLayer> surface_layer = cc::SurfaceLayer::Create(
+ base::Bind(&SatisfyCallback, base::Unretained(manager)),
+ base::Bind(&RequireCallback, base::Unretained(manager)));
+ surface_layer->SetSurfaceId(surface_id, 1.f, size);
+ surface_layer->SetBounds(size);
+ surface_layer->SetIsDrawable(true);
+ surface_layer->SetContentsOpaque(true);
+
+ return surface_layer;
+}
+
} // anonymous namespace
RenderWidgetHostViewAndroid::LastFrameInfo::LastFrameInfo(
@@ -430,25 +448,6 @@ void RenderWidgetHostViewAndroid::GetScaledContentBitmap(
preferred_color_type);
}
-scoped_refptr<cc::Layer> RenderWidgetHostViewAndroid::CreateDelegatedLayer()
- const {
- scoped_refptr<cc::Layer> delegated_layer;
- DCHECK(!surface_id_.is_null());
- cc::SurfaceManager* manager = CompositorImpl::GetSurfaceManager();
- DCHECK(manager);
- // manager must outlive compositors using it.
- scoped_refptr<cc::SurfaceLayer> surface_layer = cc::SurfaceLayer::Create(
- base::Bind(&SatisfyCallback, base::Unretained(manager)),
- base::Bind(&RequireCallback, base::Unretained(manager)));
- surface_layer->SetSurfaceId(surface_id_, 1.f, texture_size_in_layer_);
- delegated_layer = surface_layer;
- delegated_layer->SetBounds(texture_size_in_layer_);
- delegated_layer->SetIsDrawable(true);
- delegated_layer->SetContentsOpaque(true);
-
- return delegated_layer;
-}
-
bool RenderWidgetHostViewAndroid::HasValidFrame() const {
if (!content_view_core_)
return false;
@@ -1009,7 +1008,7 @@ void RenderWidgetHostViewAndroid::SubmitCompositorFrame(
surface_factory_->Destroy(surface_id_);
surface_id_ = id_allocator_->GenerateId();
surface_factory_->Create(surface_id_);
- layer_ = CreateDelegatedLayer();
+ layer_ = CreateSurfaceLayer(surface_id_, texture_size_in_layer_);
DCHECK(layer_);
@@ -1027,9 +1026,27 @@ void RenderWidgetHostViewAndroid::SubmitCompositorFrame(
ack_callback);
}
-void RenderWidgetHostViewAndroid::SwapDelegatedFrame(
+void RenderWidgetHostViewAndroid::InternalSwapCompositorFrame(
uint32_t output_surface_id,
cc::CompositorFrame frame) {
+ last_scroll_offset_ = frame.metadata.root_scroll_offset;
+ DCHECK(frame.delegated_frame_data);
+ DCHECK(CompositorImpl::GetSurfaceManager());
+
+ if (locks_on_frame_count_ > 0) {
+ DCHECK(HasValidFrame());
+ RetainFrame(output_surface_id, std::move(frame));
+ return;
+ }
+
+ DCHECK(!frame.delegated_frame_data->render_pass_list.empty());
+
+ cc::RenderPass* root_pass =
+ frame.delegated_frame_data->render_pass_list.back().get();
+ texture_size_in_layer_ = root_pass->output_rect.size();
+
+ cc::CompositorFrameMetadata metadata = frame.metadata.Clone();
+
CheckOutputSurfaceChanged(output_surface_id);
bool has_content = !texture_size_in_layer_.IsEmpty();
@@ -1044,9 +1061,6 @@ void RenderWidgetHostViewAndroid::SwapDelegatedFrame(
DestroyDelegatedContent();
} else {
SubmitCompositorFrame(std::move(frame));
- }
-
- if (layer_.get()) {
layer_->SetIsDrawable(true);
layer_->SetContentsOpaque(true);
layer_->SetBounds(texture_size_in_layer_);
@@ -1054,41 +1068,6 @@ void RenderWidgetHostViewAndroid::SwapDelegatedFrame(
if (host_->is_hidden())
RunAckCallbacks(cc::SurfaceDrawStatus::DRAW_SKIPPED);
-}
-
-void RenderWidgetHostViewAndroid::InternalSwapCompositorFrame(
- uint32_t output_surface_id,
- cc::CompositorFrame frame) {
- last_scroll_offset_ = frame.metadata.root_scroll_offset;
- if (!frame.delegated_frame_data) {
- LOG(ERROR) << "Non-delegated renderer path no longer supported";
- return;
- }
-
- if (locks_on_frame_count_ > 0) {
- DCHECK(HasValidFrame());
- RetainFrame(output_surface_id, std::move(frame));
- return;
- }
-
- if (!CompositorImpl::GetSurfaceManager() && layer_.get() &&
- layer_->layer_tree_host()) {
- for (size_t i = 0; i < frame.metadata.latency_info.size(); i++) {
- std::unique_ptr<cc::SwapPromise> swap_promise(
- new cc::LatencyInfoSwapPromise(frame.metadata.latency_info[i]));
- layer_->layer_tree_host()->QueueSwapPromise(std::move(swap_promise));
- }
- }
-
- DCHECK(!frame.delegated_frame_data->render_pass_list.empty());
-
- cc::RenderPass* root_pass =
- frame.delegated_frame_data->render_pass_list.back().get();
- texture_size_in_layer_ = root_pass->output_rect.size();
-
- cc::CompositorFrameMetadata metadata = frame.metadata.Clone();
-
- SwapDelegatedFrame(output_surface_id, std::move(frame));
frame_evictor_->SwappedFrame(!host_->is_hidden());
// As the metadata update may trigger view invalidation, always call it after
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_android.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698