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

Issue 778686 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Chrome quereies X Primary clipboard twice

Reported by cgogoli...@gmail.com, Oct 26 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36

Steps to reproduce the problem:
1. Put "foo" into the primary X clipboard and display when it is queried by running

$ echo "foo" | xclip -verbose

in a terminal.
2. Past via middle click into any text box in a website displayed in Google Chrome
3. The output of the above command is

Connected to X server.
Using UTF8_STRING.
Waiting for selection requests, Control-C to quit
  Waiting for selection request number 1
  Waiting for selection request number 2
  Waiting for selection request number 3

indicating that Chrome queries the X primary clipboard twice.

What is the expected behavior?
With previous versions of Chrome queried the X clipboard only once, resulting in the output 

Connected to X server.
Using UTF8_STRING.
Waiting for selection requests, Control-C to quit
  Waiting for selection request number 1
  Waiting for selection request number 2

What went wrong?
Apparently Chrome is querying the X primary selection twice.

This annoyingly breaks third party password manages such as pwsafe that copy the username to the X clipboard, wait until it was pasted, then copy the password to the clipboard, wait until it was pasted, and then exit. When such a password manager is used with the new version of chrome, after middle clicking into the "username" text field on a website, Chrome discards the username and instead puts the password in the username box. 

Did this work before? Yes Yes I think the problem was introduced with the update google-chrome-stable:amd64 59.0.3071.115-1 -> 60.0.3112.90-1

Chrome version: 61.0.3163.100  Channel: stable
OS Version: Debian
Flash Version: 

I first reported this issue under https://bugs.chromium.org/p/chromium/issues/detail?id=754193#c1 After my instructions for reproducing the problem were not followed correctly, the issue was closed despite the fact that the issue still exists. I was encouraged to file a new issue.
 

Comment 2 by chongz@chromium.org, Oct 27 2017

Cc: yosin@chromium.org
Labels: Hotlist-Input-Dev
Status: Assigned (was: Unconfirmed)
Can confirm it's caused by InputEvent, where we need to query clipboard one additional time to dispatch 'beforeinput'-"insertFromPaste".

+yosin@: Do you have any suggestions on the expected behavior here? We could either:
  1. Query clipboard twice so changes to clipboard during 'beforeinput' could be reflected.
  2. Query only once and cache the text.

See:
https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/editing/Editor.cpp?type=cs&sq=package:chromium&l=1222

Comment 3 by chongz@chromium.org, Jan 11 2018

Cc: -yosin@chromium.org chongz@chromium.org
Components: -UI Blink>Editing
Owner: yosin@chromium.org
Re-assigning to yosin@ as I no longer work on input. Feel free to re-assign to the correct owner if it doesn't fall into editing-dev's scope.

Thanks!

Comment 4 by yosin@chromium.org, Jan 16 2018

Owner: ----
Status: WontFix (was: Assigned)
Mark WontFix since this is expected.

Blink needs to query clipboard, aka primary selection, twice for "beforeinpue" and
actual accessing of clipboard.

>#c2, we should take option 1, polling. Caching clipboard/primary selection state is expensive
for considering updating cache == we need to listen clipboard change via browser process and
most of time, we don't use updated state.

Cc: vamshi.kommuri@chromium.org
 Issue 819113  has been merged into this issue.

Sign in to add a comment