New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 729187 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 728346


Participants' hotlists:
ExternalNavigationIssues


Sign in to add a comment

rel="noopener" on links removes user gestures

Project Member Reported by thildebr@chromium.org, Jun 2 2017

Issue description

Chrome Version: 61
OS: Android

What steps will reproduce the problem?
(1) Open messenger.com
(2) Click "Get it on Google Play"

What is the expected result?
Play Store app opens.

What happens instead?
Link is shown in Chrome instead.

We've narrowed this down to the way links with rel="noopener" behave with regard to user gestures. Links with rel="noopener" are treated as if there was no user gesture, and so we decide to avoid opening an associated app.

Hopefully you can give us some insight into why rel="noopener" causes user gestures to disappear, or point us in the right direction. Thanks.
 
Blocking: 728346

Comment 2 by mkwst@chromium.org, Jun 6 2017

Cc: mkwst@chromium.org alex...@chromium.org
Owner: jochen@chromium.org
Status: Assigned (was: Untriaged)
thildebr@: Do you see the same behavior with `rel="noreferrer"`?

jochen@: Is this something you could take a quick look at? I'm not sure where gestures come into play. +alexmos@, just in case this has something to do with the process hop we encourage for these kinds of navigations.
Labels: Needs-Feedback
i'm surprised this is rel=noopener, and not target=_blank that causes this, can you clarify that?
So I just re-tested it:
- target="_blank" on its own works as intended, it will open in the Play Store.
- rel="noreferrer" causes it to just open in Chrome as well.
Cc: jochen@chromium.org
Owner: jaekyun@chromium.org
ok, i think what happens is that we open those links in a new process, however, user gestures are something process local.

jaekyun@ added the logic for requiring a user gesture on links to the play store, assigning to them.
Owner: changwan@chromium.org
Changwan, please triage this issue.
Cc: -mariakho...@chromium.org changwan@chromium.org
Owner: mariakho...@chromium.org
Maria, could you triage this?
jochen@ can you suggest another owner for this? jaekyun@ has left Chrome team. Is there someone else familiar with that code?
I don't know, I only interacted with them. Maybe one of their teammates remembers who took over ownership of this feature?
I think the answer is that no-one took ownership of the feature. I found https://bugs.chromium.org/p/chromium/issues/detail?id=427357 which introduced the feature originally and it looks like it's jaekyun's implementation with jochen's code reviews.

Sounds like we'll need a brave volunteer for this to get fixed.
Cc: mariakho...@chromium.org
Owner: thildebr@chromium.org
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 16 2017

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

commit b0d04772edfcaf49e8bfc909f8ed1596e8d46184
Author: thildebr <thildebr@chromium.org>
Date: Fri Jun 16 19:38:37 2017

Pass user gesture flag when opening a new tab on Android.

What was thought to be a bug related to rel=noopener turned out to be a bug
with opening new tabs after all (oops.) User gestures were not being passed
through via LoadURLParams on Android, which causes issues with launching apps
when necessary via links with target=_blank.

BUG= 729187 , 728346 

Review-Url: https://codereview.chromium.org/2942163003
Cr-Commit-Position: refs/heads/master@{#480124}

[modify] https://crrev.com/b0d04772edfcaf49e8bfc909f8ed1596e8d46184/components/web_contents_delegate_android/web_contents_delegate_android.cc

Status: Fixed (was: Assigned)

Sign in to add a comment