Context menu triggered while scrolling |
|||||||||||||||
Issue descriptionVersion: 55 OS: Android, iOS What steps will reproduce the problem? (1) Open any website (e.g. medium.com) (2) Scroll (3) Stop the scrolling by resting a finger on the screen What is the expected output? The scrolling should stop, then nothing else should happen. What do you see instead? The context menu is shown whenever an image, video or link happens to be below the touch point. This unexpected behavior is particularly annoying and distractive on pages with many images or links. Proposal Only show the context menu if the long press is initiated on a steady page (this is what other mobile browsers do to prevent this UX issue).
,
Aug 31 2016
+ Pink I never faced this issue because I always thought that stopping the scrolling is by touching the screen as opposed to resting the finger on the screen. However, I see why this could be an issue for users who are used to rest their finger. I don't have a problem with the proposal in the description: Only show the context menu if the long press is initiated on a steady page.
,
Aug 31 2016
What's the behavior on Safari?
,
Sep 1 2016
I think Safari's behavior is as described above: the context menu is only shown if the long press is initiated on a steady page.
,
Sep 1 2016
,
Sep 27 2016
FYI: I have added this to the Bling roadmap. We will assign a milestone when the fix is landed on canary
,
Oct 25 2016
Pink: Curious what you think about it. Now, that I'm focusing on it, it's certainly annoying and I think we need to fix it.
,
Oct 25 2016
Certainly seems like we should behave like Safari. It's a little thing, but annoying if that's how users interact with it (everyone scrolls differently) and we shouldn't force users to modify their behavior. +eugenebut
,
Oct 27 2016
Fixed for iOS: https://codereview.chromium.org/2452973003/
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/033350786362e99d206a97e0e656c2e0a478e3c9 commit 033350786362e99d206a97e0e656c2e0a478e3c9 Author: eugenebut <eugenebut@chromium.org> Date: Thu Oct 27 00:18:57 2016 [ios] Do not trigger context menu while scrolling. Fail _contextMenuRecognizer if webview's scroll view panGestureRecognizer was recognized. BUG= 642375 Review-Url: https://codereview.chromium.org/2452973003 Cr-Commit-Position: refs/heads/master@{#427888} [modify] https://crrev.com/033350786362e99d206a97e0e656c2e0a478e3c9/ios/web/web_state/ui/crw_web_controller.mm
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5abe79ab4b2768cb617e6bf97989aa093421078a commit 5abe79ab4b2768cb617e6bf97989aa093421078a Author: bzanotti <bzanotti@chromium.org> Date: Thu Oct 27 08:48:03 2016 Revert of [ios] Do not trigger context menu while scrolling. (patchset #1 id:1 of https://codereview.chromium.org/2452973003/ ) Reason for revert: Breaking many integration tests on iOS downstream. Original issue's description: > [ios] Do not trigger context menu while scrolling. > > Fail _contextMenuRecognizer if webview's scroll view > panGestureRecognizer was recognized. > > BUG= 642375 > > Committed: https://crrev.com/033350786362e99d206a97e0e656c2e0a478e3c9 > Cr-Commit-Position: refs/heads/master@{#427888} TBR=kkhorimoto@chromium.org,eugenebut@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= 642375 Review-Url: https://codereview.chromium.org/2453903003 Cr-Commit-Position: refs/heads/master@{#427966} [modify] https://crrev.com/5abe79ab4b2768cb617e6bf97989aa093421078a/ios/web/web_state/ui/crw_web_controller.mm
,
Oct 27 2016
Not fixed on iOS. cl/2452973003 broke context menu and was revered.
,
Dec 15 2016
Is this on someone's radar? I'd like to fix it in M57 please.
,
Dec 15 2016
No one is actively working on this. I've tried to fix this but the problem is non-trivial. Adding Kurt and Mike if they want to take a look.
,
Dec 15 2016
We could probably implement this by enabling/disabling the context menu gesture recognizer upon receiving the UIScrollViewDelegate willBeginDragging: and didEndScrollingAnimation callbacks.
,
Jan 10 2017
I hope someone can address this in Q1. Simply scrolling the SRP and stopping triggers this if your finger lands on a link or image. Kurt: how complex and how risky is your proposal?
,
Jan 10 2017
,
Jan 10 2017
I would like to look into this. As I am quite new to this area, it may take me some days to learn and figure out how things work, so feel free to jump in and take it if anyone has a simple and quick fix.
,
Jan 18 2017
Fixed on iOS. https://codereview.chromium.org/2639793002/ Not sure what the status is on Android, so I'll just leave this issue open.
,
Jan 18 2017
,
Jan 19 2017
Checked on the latest chrome canary version 57.0.2986.0 on iPhone 7 plus with iOS 10.2, iPad Air with iOS 10.1.1, iPad Pro with iOS 9.3.5. Context menu is not trigger when scrolling is stopped by placing a finger on the link or image. Looks good.
,
Jan 19 2017
Thank you very much for verifying it Venu!
,
Feb 2 2017
Hi Yuke, Is this going into M57 ? If so, please feel free to mark it as fixed. And put the right release label. Thank you.
,
Feb 2 2017
Yes for iOS. This bug is marked both for Android and iOS, and I'm not sure what the progress is on Android. Should I still mark it as fixed?
,
Feb 2 2017
,
Feb 2 2017
We can file a separate bug for iOS or Android. Only one will be marked as fixed.
,
Feb 6 2017
I've created a separate bug: 689073 for Android, and will close this one. |
|||||||||||||||
►
Sign in to add a comment |
|||||||||||||||
Comment 1 by ainslie@chromium.org
, Aug 30 2016