New issue
Advanced search Search tips

Issue 711828 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: ----

Blocking:
issue 758937



Sign in to add a comment

Page content jumps when scroll hides Chrome Home toolbar

Project Member Reported by k...@chromium.org, Apr 14 2017

Issue description

Application Version (from "Chrome Settings > About Chrome"): 59.0.3068.4

What steps will reproduce the problem?
(1) Open https://ampstart.com/templates/article.amp 
(2) Scroll down

What is the expected result? No page jump

What happens instead? Page jumps up a little bit

From aelias@: I can repro that with 59.0.3068.4 with Chrome Home enabled but not with 59.0.3068.4 with Chrome Home disabled.  bokan@ is the expert on this, it seems something about the way Chrome Home changed the sizing model accidentally messes with what he did to maintain consistency with "vh" sized things (https://docs.google.com/document/d/1kyOHTOJ_qcapdaxChds_hSBG3nSpawllEQoHvtMEcvA/edit ).



 

Comment 1 by k...@chromium.org, Apr 14 2017

Labels: -Restrict-View-Google

Comment 2 by bokan@chromium.org, Apr 18 2017

Yup, it looks like Google Home undoes the change I made for static layout. See: http://bokand.github.io/demo/urlbarsize.html. The two orange bars shouldn't change size as the URL bar hides/shows. Also, the "percentage-based" one should be shorter than the "viewport-unit" one by the height of the top controls.

This is done by keeping adding the URL bar's height to the initial-containing-block height if the URL bar is hidden in WebViewImpl::PerformResize. However, I don't see any branches in the related code for the Home setting so I'm not sure how this is breaking. How does having Home enabled affect the resize path? Does Home set the browser controls height properly?

Comment 3 by k...@chromium.org, May 19 2017

Matt any ideas here?
This fell off my radar, I'll take a look next week.

Comment 5 by e...@chromium.org, May 24 2017

Issue 725227 has been merged into this issue.
Owner: mdjones@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 7 by bugdroid1@chromium.org, Jul 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b

commit 7e15618d1bf16df8bf0ecf2914ed1964a387ba0b
Author: Matthew Jones <mdjones@chromium.org>
Date: Fri Jul 21 22:21:33 2017

[Home] Add concept of bottom browser controls to blink

Previously, blink was never properly notified of the browser controls
height when they are at the bottom of the screen. This change updates
Blink's concept of browser controls to include bottom controls,
allowing top and bottom controls to be considered independently as the
two have slightly different behavior. If top controls height is 0, the
manager attempts to base the calculations off the bottom controls.The
result of this is correct viewport sizing for fixed-positioned web
elements when the browser controls are at the bottom of the screen.

BUG= 711828 

Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ibcfd6aa6280d884200c03f24c07d3a214fc836c0
Reviewed-on: https://chromium-review.googlesource.com/560641
Commit-Queue: Matthew Jones <mdjones@chromium.org>
Reviewed-by: Alexandre Elias <aelias@chromium.org>
Reviewed-by: David Bokan <bokan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488774}
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/cc/trees/layer_tree_host.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/content/renderer/render_view_impl.cc
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/content/renderer/render_view_impl.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-background-modified.html
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-gradient-background-iframe-expected.html
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-gradient-background-iframe-scroller.html
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-gradient-background-iframe.html
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-gradient-background.html
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/frame/BrowserControls.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/frame/BrowserControls.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/frame/BrowserControlsTest.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/frame/LocalFrameView.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/frame/VisualViewportTest.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/page/ChromeClient.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/page/ChromeClientImpl.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/page/ChromeClientImpl.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/page/scrolling/RootScrollerTest.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/testing/Internals.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/testing/Internals.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/core/testing/Internals.idl
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/Source/web/tests/WebFrameTest.cpp
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/public/platform/WebLayerTreeView.h
[modify] https://crrev.com/7e15618d1bf16df8bf0ecf2914ed1964a387ba0b/third_party/WebKit/public/web/WebView.h

Status: Fixed (was: Assigned)
Project Member

Comment 9 by bugdroid1@chromium.org, Jul 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4179009f27a46d15b8909038d2cff3079804d91a

commit 4179009f27a46d15b8909038d2cff3079804d91a
Author: David Bokan <bokan@chromium.org>
Date: Thu Jul 27 23:39:38 2017

Fix setBrowserControlsState calls in tests

r488774 added a new parameter to this method but a few tests were
forgotten or added in the mean time. The tests weren't failing (default
arguments were ok) but this fixes them explicitly.

Bug:  711828 
Change-Id: Ie9f0619aedc2661912c397c2c4572e7f43e18c66
Reviewed-on: https://chromium-review.googlesource.com/587911
Reviewed-by: Matthew Jones <mdjones@chromium.org>
Commit-Queue: David Bokan <bokan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#490116}
[modify] https://crrev.com/4179009f27a46d15b8909038d2cff3079804d91a/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-background-iframe-scroller.html
[modify] https://crrev.com/4179009f27a46d15b8909038d2cff3079804d91a/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-background-iframe.html
[modify] https://crrev.com/4179009f27a46d15b8909038d2cff3079804d91a/third_party/WebKit/LayoutTests/virtual/android/fast/rootscroller/browser-controls-background.html

Blocking: 758937

Sign in to add a comment