Issue metadata
Sign in to add a comment
|
Scroll momentum with a precision trackpad does not stop on windows 10 when using two fingers
Reported by
xavierg...@gmail.com,
May 29 2018
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36 Steps to reproduce the problem: 1. Use a precision trackpad on windows 10 1. Scroll with two fingers and enough speed to have momentum a webpage 2. Place two fingers back in the trackpad surface What is the expected behavior? If the same is done for example in the start menu list scrolling stops in its tracks What went wrong? Scroll does not stop at all unless an opposite scrolling movement is performed Did this work before? N/A Chrome version: 67.0.3396.62 Channel: stable OS Version: 10.0 Flash Version:
,
May 29 2018
,
May 29 2018
,
May 29 2018
,
May 29 2018
,
May 30 2018
Unable to reproduce the issue on Win-10 precision trackpad laptop using chrome reported version #67.0.3396.62 and latest canary #69.0.3444.0. Attached a screen cast for reference and gpu_details Following are the steps followed to reproduce the issue. ------------ 1. Used a precision trackpad on windows 10 and navigated to wikipedia.org. 2. Scrolled with two fingers and enough speed to have momentum a webpage. 3. Placed two fingers back in the trackpad surface. 4. Observed that scrolling stopped and there was no opposite scrolling movement. xaviergonz@ - Could you please check the issue on latest canary #69.0.3444.0 by creating a new profile without any apps and extensions and please let us know if the issue still persist or not. Thanks...!!
,
May 30 2018
I did try with a clean profile and chrome canary and still happened with a Dell xps 15. did you place the two fingers and see it stop while the scroll momentum was still kicking? it's hard to tell from the video. If you want I can make a video myself, but basically what I mean is 1.scroll with two fingers with speed and lift your fingers up, momentum should kick in and keep scrolling while your fingers are off 2.before momentum scrolling is finished place your two fingers back in the track pad but don't move them, on that moment the momentum scrolling should stop. immediately, but instead it continues until it wears off You can test the expected behavior both on edge or the start menu list for example, but it is basically the same thing that happens on a smart phone while doing the same set of steps
,
May 30 2018
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 30 2018
,
May 30 2018
I can reproduce this randomly with this step. 1. open chrome. 2. open second chrome. 3. focus second chrome. 4. touchpad pan on first chrome then tap. Via the logs I am sure we are receiving fling event from direct manipulation api. It may be some undocumented issue related to focus. I also tested on Edge. I don't experiencing this issue. sky@ do you have any idea?
,
May 30 2018
Funnily enough I found that if you use for example this page (although it happens with any): https://chromium.googlesource.com/chromium/src/+/master/ui/gfx/ If you set chrome to full screen (I'm using a hi-dpi resolution screen set to 2x full hd + 200% scaling, not sure if related) and you do the scrolling on the first left third of the page it works, but if you do it on the right 2/3rd of the screen it doesn't. Also, no matter where I do the two finger tapping, if I let go of it quick enough it will show the right button context menu (I have both tap with one finger to click and tap with two fingers to right click set to on)
,
May 30 2018
By full screen I just mean maximized window by the way
,
May 30 2018
Maybe it is related to this? https://github.com/chromium/chromium/blob/master/ui/base/win/direct_manipulation.cc // We only use Direct Manipulation as event handler so we can use any size for // the fake viewport. const RECT VIEWPORT_DEFAULT_RECT = {0, 0, 1000, 1000}; ... hr = viewport_->SetViewportRect(&VIEWPORT_DEFAULT_RECT); ... HRESULT hr = viewport_->ZoomToRect( static_cast<float>(VIEWPORT_DEFAULT_RECT.left), static_cast<float>(VIEWPORT_DEFAULT_RECT.top), static_cast<float>(VIEWPORT_DEFAULT_RECT.right), static_cast<float>(VIEWPORT_DEFAULT_RECT.bottom), FALSE); I don't see another setViewport which might be for the non-fake one, so that might explain why it only seems to pick up the first 1000 left pixels of the window and also why it seems to pick up even less of a zone when using a hi-dpi display.
,
May 30 2018
Good catch. Thank you.
,
May 30 2018
Glad to be of help :D Another thing I just noticed is that if you hit a link which is inside that left zone and start scrolling into the new page it will stop registering scrolling/zoom gestures and the only way to unlock it again is by making a gesture on the right zone.
,
May 30 2018
For example, go to this page: https://msdn.microsoft.com/en-us/library/windows/desktop/hh768923(v=vs.85).aspx scroll near the left zone then click on a link then scroll around again for a while near the left zone, it will stop picking up scrolling events after two or three seconds or so then do a scroll on the right zone and everything will be back to normal
,
May 30 2018
,
May 30 2018
Just tested again, the scroll locking does not happen in Chrome canary. However the "left stops momentum vs right doesn't" still applies + tapping to fast to stop momentum opens the context menu.
,
May 30 2018
I can reproduce it on canary randomly. I also have a fix waiting for review.
,
May 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a commit 1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a Author: chaopeng <chaopeng@chromium.org> Date: Thu May 31 15:32:47 2018 Fix snap fling by tap and unable to scroll for new page on Windows touchpad The user reported 2 issues in this issue: 1. should stop fling when user tap on touchpad when fling 2. not able to scroll when user click on link to load a slow page then scroll The first issue is caused by we don't setup the real window size for viewport. The second issue is caused by we don't stop the viewport before activate or deactivate the window that may turns the direct manipulation to a unknown state and stop sending events to chrome. Bug: 847611 Change-Id: I646caf9aa70460741cedc1fea7804d8afe14d437 Reviewed-on: https://chromium-review.googlesource.com/1079460 Reviewed-by: Scott Violet <sky@chromium.org> Commit-Queue: Jianpeng Chao <chaopeng@chromium.org> Cr-Commit-Position: refs/heads/master@{#563247} [modify] https://crrev.com/1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a/content/browser/renderer_host/legacy_render_widget_host_win.cc [modify] https://crrev.com/1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a/ui/base/win/direct_manipulation.cc [modify] https://crrev.com/1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a/ui/base/win/direct_manipulation.h
,
May 31 2018
Actually also one more, showing the context menu when using two fingers tapping to stop the flinch.
,
May 31 2018
This is same as 1. I have tested this case. Please wait for canary for 1~2 days.
,
May 31 2018
Ah cool! Thanks. Just mentioned it because it still happens to me even if I do it inside the 1000x1000 pixels region.
,
May 31 2018
Although I must say in that case it seems to happen if the two fingers to stop are held for like half a second or so. If they are released earlier / later then it doesn't happen.
,
May 31 2018
Issue 848331 has been merged into this issue.
,
May 31 2018
+craigtumblison@ & melodychu@ (ConOps POCs), pls let us know if you see a spike in user reports for this issue. At the moment we're not considering this as M67 stable blocker for further roll out. Pls let us know if there is any concern here.
,
May 31 2018
chaopeng@, pls update the bug with canary result tomorrow.
,
May 31 2018
#26: Just took a look and we're not seeing sizable feedback on this across our consumer channels. I'm aligned with it not being a ramp blocker, but will let you know if we see any spikes. Thanks!
,
May 31 2018
#28: OK, good to know. Thank you.
,
May 31 2018
Pls request a merge to M68 once change listed at #20 is baked/verified in canary. For M67 which is already in stable, we will take this merge only if we see a spike in user reports. Thank you.
,
May 31 2018
,
Jun 1 2018
The NextAction date has arrived: 2018-06-01
,
Jun 1 2018
The fix is landed in 69.0.3447.0. I tested the 69.0.3447.2 on surface and it fixed.
,
Jun 1 2018
Results for me: Fixed: Scrolling out of the 1000x1000 pixel zone Scroll locking sometimes Still with issues: Right context menu still appearing from time to time while stopping it with two fingers, but I just found out that the same happens with Edge and the start menu list, so if might have something to do with the Microsoft implementation of the API. Nice work :D
,
Jun 1 2018
Thank you for testing. The right context menu is another issue from driver we don't know if MS would fix it.
,
Jun 1 2018
Issue 848656 has been merged into this issue.
,
Jun 1 2018
chaopeng@, how safe is the change listed at #20 to merge to M67? So far we got 3 reports: Issue 847611 , Issue 848331 , Issue 848656 .
,
Jun 1 2018
I think it is safe to merge.
,
Jun 1 2018
The CL in #22 is not fully safe for merge to stable because it is related to Windows API. We will turn off the feature if we seeing more reports in M67.
,
Jun 1 2018
Your change meets the bar and is auto-approved for M68. Please go ahead and merge the CL to branch 3440 manually. Please contact milestone owner if you have questions. Owners: cmasso@(Android), kariahda@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fb6d5266cc47303c9d2648c870d08ab44e3689ef commit fb6d5266cc47303c9d2648c870d08ab44e3689ef Author: chaopeng <chaopeng@chromium.org> Date: Fri Jun 01 23:15:39 2018 Fix snap fling by tap and unable to scroll for new page on Windows touchpad The user reported 2 issues in this issue: 1. should stop fling when user tap on touchpad when fling 2. not able to scroll when user click on link to load a slow page then scroll The first issue is caused by we don't setup the real window size for viewport. The second issue is caused by we don't stop the viewport before activate or deactivate the window that may turns the direct manipulation to a unknown state and stop sending events to chrome. Bug: 847611 Change-Id: I646caf9aa70460741cedc1fea7804d8afe14d437 Reviewed-on: https://chromium-review.googlesource.com/1079460 Reviewed-by: Scott Violet <sky@chromium.org> Commit-Queue: Jianpeng Chao <chaopeng@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#563247}(cherry picked from commit 1c01a8d4e41312e1a7c0c7d7e67d6d65f8d86f1a) Reviewed-on: https://chromium-review.googlesource.com/1083793 Reviewed-by: Jianpeng Chao <chaopeng@chromium.org> Cr-Commit-Position: refs/branch-heads/3440@{#109} Cr-Branched-From: 010ddcfda246975d194964ccf20038ebbdec6084-refs/heads/master@{#561733} [modify] https://crrev.com/fb6d5266cc47303c9d2648c870d08ab44e3689ef/content/browser/renderer_host/legacy_render_widget_host_win.cc [modify] https://crrev.com/fb6d5266cc47303c9d2648c870d08ab44e3689ef/ui/base/win/direct_manipulation.cc [modify] https://crrev.com/fb6d5266cc47303c9d2648c870d08ab44e3689ef/ui/base/win/direct_manipulation.h
,
Jun 1 2018
chaopeng@, thanks for merging my issue, I wasn't aware that this one fixes both momentum scroll as well as (as I now realized reading more carefully through comments) scrolling outside the 1000x1000 area. Nice to know the workaround exists as well until the change is available in stable channel. Sorry for a duplicate.
,
Jun 4 2018
Since this issue affect almost all touchpad user, we turn off the touchpad feature in M67.
,
Jun 5 2018
Unable to reproduce the issue on hp laptop with precision touchpad using build without fix. As per comment #7, it seems to be reproducible on a Dell laptop with precision touchpad and we don't have that particular device to test the issue. Hence, requesting someone who are facing this issue for help in verification on latest canary. The latest chrome builds can be downloaded from the below URL: https://www.chromium.org/getting-involved/dev-channel Thanks...!!
,
Jun 5 2018
Hi krajshree, to reproduce this issue, you need to move mouse cursor to right bottom out of (1000, 1000) screen pixel, if you are using high DPI screen right bottom should be enough. Then scroll, lift finger then tap. You will see the tap does not stop the fling.
,
Jun 11 2018
,
Jul 26
,
Jul 26
This issue is back again on Chrome 68.0.3440.75!
,
Jul 26
Hi landry.maxime, Which issue your seeing in M68? Please provide reproduce steps. Thank you. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by xavierg...@gmail.com
, May 29 2018