cannot tap links at bottom of screen |
|||||||
Issue description
Chrome Version : 66.0.3336.4
OS Version: Android
URLs (if applicable) :
Other browsers tested:
Add OK or FAIL after other browsers where you have tested this issue:
Safari:
Firefox:
IE/Edge:
What steps will reproduce the problem?
1. Launch chrome with --root-layer-scrolls
2. Visit reddit.com
3. Scroll to the bottom of the page such that url bar is hidden, tap next
What is the expected result?
Navigate to next page
What happens instead of that?
Nothing
Looks like top control clipping issue. Works OK if the url bar is shown (e.g scroll down quickly before we activate url bar hiding).
,
Feb 2 2018
,
Feb 2 2018
This is analogous to the work I did to make this work correctly for document.rootScroller since RLS means we're making a PaintLayer the rootScroller and so it need to know how to handle the URL bar clipping adjustment. There's simplified cases in RootScrollerTest.cpp in RootScrollerHitTest tests. It looks like one of them was disabled when landing https://crrev.com/c/843418 with a note that it's broken for rootScroller. That means there's a decent chance it's broken for root-layer-scrolls too so that's a good place to start looking.
,
Feb 7 2018
This isn't actually related to RLS and repros without the flag. I've tracked it down to https://chromium-review.googlesource.com/c/chromium/src/+/879359 It looks like we don't get a resize message after the URL bar is shown or hidden. I'm guessing that's somehow triggered by a ScrollEnd but I'm not sure where yet.
,
Feb 7 2018
,
Feb 7 2018
sahel@, we used to call DidStopFlinging with this stack trace: 000f5661 base::debug::StackTrace::StackTrace() /home/bokan/chrome/src/base/debug/stack_trace.cc:199:28 01761dad content::ContentViewCore::DidStopFlinging() /home/bokan/chrome/src/content/browser/android/content_view_core.cc:491:27 01794cd5 content::RenderWidgetHostViewAndroid::DidStopFlinging() /home/bokan/chrome/src/content/browser/renderer_host/render_widget_host_view_android.cc:2078:25 015bf3b7 content::RenderWidgetHostImpl::DidStopFlinging() /home/bokan/chrome/src/content/browser/renderer_host/render_widget_host_impl.cc:2314:12 0150062b content::InputRouterImpl::DidStopFlinging() /home/bokan/chrome/src/content/browser/renderer_host/input/input_router_impl.cc:243:12 00ac9061 content::mojom::WidgetInputHandlerHostStubDispatch::Accept(content::mojom::WidgetInputHandlerHost*, mojo::Message*) /home/bokan/chrome/src/out/ClankDebug/gen/content/common/input/input_handler.mojom.cc:805:13 01501a8f content::mojom::WidgetInputHandlerHostStub<mojo::RawPtrImplRefTraits<content::mojom::WidgetInputHandlerHost> >::Accept(mojo::Message*) /home/bokan/chrome/src/out/ClankDebug/gen/content/common/input/input_handler.mojom.h:553:12 000227e9 mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) /home/bokan/chrome/src/mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:419:32 00021dd1 mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message*) /home/bokan/chrome/src/mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:133:18 0002124b mojo::FilterChain::Accept(mojo::Message*) /home/bokan/chrome/src/mojo/public/cpp/bindings/lib/filter_chain.cc:40:17 With the CL in #4 we no longer do. This would eventually call through in Java to CompositorViewHolder.setSize with a changed controlsHeight which is what kicks off the resize down the line. The same flow occurs for GestureScrollEnd in GestureListenerManager::GestureEventAck. It appears at the end of a fling we now call this instead of receiving the DidStopFlinging. Both GestureScrollEnd and DidStopFlinging call ChromeFullscreenManager.onContentViewScrollingStateChanged but it looks like the scrolling bit is incorrectly set to true now so we never call updateVisuals. PTAL.
,
Feb 7 2018
Issue 809904 has been merged into this issue.
,
Feb 7 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2 commit 7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2 Author: Sahel Sharify <sahel@chromium.org> Date: Wed Feb 07 21:33:00 2018 Fling controller notifies the client after fling cancellation. Android relies on getting the notification when a fling cancels/stops. This cl calls client_->DidStopFlinging() in input_router_impl which used to get called after a DidStopFlinging message from renderer. Bug: 808587 Test: FlingControllerTest.ControllerNotifiesTheClientAfterFlingStart Change-Id: Icfd7966c19b8f4c770163bb4973548ddc50b35dc Reviewed-on: https://chromium-review.googlesource.com/907412 Reviewed-by: Dave Tapuska <dtapuska@chromium.org> Commit-Queue: Sahel Sharifymoghaddam <sahel@chromium.org> Cr-Commit-Position: refs/heads/master@{#535147} [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/fling_controller.cc [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/fling_controller.h [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/fling_controller_unittest.cc [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/gesture_event_queue_unittest.cc [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/input_router_impl.cc [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/input_router_impl.h [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/legacy_input_router_impl.cc [modify] https://crrev.com/7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2/content/browser/renderer_host/input/legacy_input_router_impl.h
,
Feb 8 2018
,
Feb 9 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b1822bf3805fceac699aa0d468c8a62d841d213f commit b1822bf3805fceac699aa0d468c8a62d841d213f Author: Sahel Sharify <sahel@chromium.org> Date: Fri Feb 09 14:50:34 2018 Revert touchscreen browser side fling cls in stack order to avoid conflicts. Revert "Touchscreen fling handled on browser." This reverts commit ef3f05dd13ef8e10c3084e216472622912cdb1a1. Revert "TouchStart should be uncancelable during an active touchscreen fling." This reverts commit 7460a67e494251d321579e1b4fc6c8298408ad7c. Revert "Fling controller notifies the client after fling cancellation." This reverts commit 7b1d8bcc2db94ce1acf6cb267f2df87c61d9d4c2. Revert "Browser side fling works properly with oopif." This reverts commit 10bc4d47f4568374d5ff1a1ec211bf14c965852d. The cls are reverted since browser side touchscreen fling breaks android webview's synchronous input animation. TBR=alexmos@chromium.org Bug: 808929, 249063 , 809069 , 808587 Change-Id: I35e1fd34317c0979cf05780a43426c2d76e85578 Reviewed-on: https://chromium-review.googlesource.com/909699 Commit-Queue: Dave Tapuska <dtapuska@chromium.org> Reviewed-by: Dave Tapuska <dtapuska@chromium.org> Reviewed-by: Timothy Dresser <tdresser@chromium.org> Cr-Commit-Position: refs/heads/master@{#535708} [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/fling_controller.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/fling_controller.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/fling_controller_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/gesture_event_queue.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/gesture_event_queue.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/gesture_event_queue_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/input_router.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/input_router_impl.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/input_router_impl.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/input_router_impl_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/legacy_input_router_impl.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/legacy_input_router_impl.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/legacy_input_router_impl_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/non_blocking_event_browsertest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/passthrough_touch_event_queue.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/passthrough_touch_event_queue.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/input/passthrough_touch_event_queue_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_impl.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_impl.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_view_android.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/renderer_host/render_widget_host_view_child_frame.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/browser/site_per_process_browsertest.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/common/input/gesture_event_stream_validator.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/common/input/gesture_event_stream_validator.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/common/input/input_event_stream_validator.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/content/common/input/input_event_stream_validator.h [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/testing/buildbot/filters/mojo.fyi.viz.content_browsertests.filter [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/testing/buildbot/filters/viz.content_browsertests.filter [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/ui/events/blink/input_handler_proxy.cc [modify] https://crrev.com/b1822bf3805fceac699aa0d468c8a62d841d213f/ui/events/blink/input_handler_proxy_unittest.cc |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by bokan@chromium.org
, Feb 2 2018