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

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

Issue 2106753004: Introduce bottom controls to CC and let it respond to scrolling (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: vector->float in IPC Created 4 years, 4 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
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 f29806a0d39156454381aaea89f7707545793c88..b400557d2deb665600e2e1fa8910d551d78df54a 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -626,6 +626,14 @@ float RenderWidgetHostViewAndroid::GetTopControlsHeight() const {
return content_view_core_->GetTopControlsHeightDip();
}
+float RenderWidgetHostViewAndroid::GetBottomControlsHeight() const {
+ if (!content_view_core_)
+ return 0.f;
+
+ // The height of the top controls.
+ return content_view_core_->GetBottomControlsHeightDip();
+}
+
void RenderWidgetHostViewAndroid::UpdateCursor(const WebCursor& cursor) {
// There are no cursors on Android.
}
@@ -992,8 +1000,8 @@ void RenderWidgetHostViewAndroid::SubmitCompositorFrame(
}
if (surface_id_.is_null() ||
texture_size_in_layer_ != current_surface_size_ ||
- location_bar_content_translation_ !=
- frame.metadata.location_bar_content_translation ||
+ top_bar_shown_ratio_ != frame.metadata.top_controls_shown_ratio ||
+ bottom_bar_shown_ratio_ != frame.metadata.bottom_controls_shown_ratio ||
no sievers 2016/08/16 20:29:16 This is for pixel-perfect scrolling where tearing
Ian Wen 2016/08/17 00:20:46 Done. I removed #1004, but kept #1017 as is.
current_viewport_selection_ != frame.metadata.selection) {
RemoveLayers();
if (!surface_id_.is_null())
@@ -1005,8 +1013,8 @@ void RenderWidgetHostViewAndroid::SubmitCompositorFrame(
DCHECK(view_.GetLayer());
current_surface_size_ = texture_size_in_layer_;
- location_bar_content_translation_ =
- frame.metadata.location_bar_content_translation;
+ top_bar_shown_ratio_ = frame.metadata.top_controls_shown_ratio;
+ bottom_bar_shown_ratio_ = frame.metadata.bottom_controls_shown_ratio;
current_viewport_selection_ = frame.metadata.selection;
AttachLayers();
}
@@ -1246,10 +1254,9 @@ void RenderWidgetHostViewAndroid::OnFrameMetadataUpdated(
// Set parameters for adaptive handle orientation.
gfx::SizeF viewport_size(frame_metadata.scrollable_viewport_size);
viewport_size.Scale(frame_metadata.page_scale_factor);
- gfx::RectF viewport_rect(
- frame_metadata.location_bar_content_translation.x(),
- frame_metadata.location_bar_content_translation.y(),
- viewport_size.width(), viewport_size.height());
+ gfx::RectF viewport_rect(0.0f, frame_metadata.top_controls_height *
+ frame_metadata.top_controls_shown_ratio,
+ viewport_size.width(), viewport_size.height());
selection_controller_->OnViewportChanged(viewport_rect);
}
@@ -1263,8 +1270,10 @@ void RenderWidgetHostViewAndroid::OnFrameMetadataUpdated(
frame_metadata.max_page_scale_factor),
frame_metadata.root_layer_size,
frame_metadata.scrollable_viewport_size,
- frame_metadata.location_bar_offset,
- frame_metadata.location_bar_content_translation,
+ frame_metadata.top_controls_height,
+ frame_metadata.top_controls_shown_ratio,
+ frame_metadata.bottom_controls_height,
+ frame_metadata.bottom_controls_shown_ratio,
is_mobile_optimized,
frame_metadata.selection.start);
#if defined(VIDEO_HOLE)

Powered by Google App Engine
This is Rietveld 408576698