New issue
Advanced search Search tips

Issue 864957 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 5
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression : PDF page does not get auto scrolled while selecting text from multiple pages.

Reported by avsha...@etouch.net, Jul 18

Issue description

Chrome Version : 68.0.3440.68 (Official Build) d2ca6001e233a025f2e51e7b97ca8fade5cb6a18-refs/branch-heads/3440@{#710} 32/64 bit
OS : Windows (7, 8, 8.1, 10), Linux(14.04 LTS), Mac (10.12.6, 10.13.1, 10.14, 10.13.6)

Test URL : http://ncu.rcnpv.com.tw/Uploads/20131231103232738561744.pdf

What steps will reproduce the problem?
1. Launch chrome and navigate to above test URL.
2. Now click & hold (Left mouse button) on the PDF and drag mouse downwards to select text from multiple pages in single attempt.
3. Observe.

Actual Result : PDF page does not get auto scrolled while selecting text from multiple pages.

Expected Result : PDF page should auto scroll according to the mouse movement while selecting text from multiple pages.

This is a regression issue broken in ‘M-65’ and below is the bisect info:
Good Build : 65.0.3303.0 (Revision : 526141)
Bad Build : 65.0.3304.0 (Revision : 526164)

Change Log URL :
https://chromium.googlesource.com/chromium/src/+log/d37a9f10c7e32ff40e864a2ff30478fc8a0a1169..8e8ae37d2e02943cadb4d658777866e8e4a12f60

Suspect : https://chromium.googlesource.com/chromium/src/+/8e8ae37d2e02943cadb4d658777866e8e4a12f60

Sadrul@ : Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner.

Note : 
1. Issue can be reproduced on any PDF that has selectable text in it.
2. This issue is also observed on Canary build #69.0.3495.0, Stable #67.0.3396.99

Thank You..!
 
Actual_Result.mp4
1.2 MB View Download
Expected_Result.mp4
2.1 MB View Download
Cc: sadrul@chromium.org riajiang@chromium.org
Owner: kenrb@chromium.org
Cc: kenrb@chromium.org pbomm...@chromium.org
 Issue 873117  has been merged into this issue.
I believe this is because of  issue 647378 , we don't lock input to widgets in all cases where it is needed, including text highlight dragging. Previously there was a hack in place to try to preserve that behavior but it had to be removed because it caused other bugs (which was done by the suspect CL above).
Project Member

Comment 4 by bugdroid1@chromium.org, Aug 31

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

commit 334029e1be165c014c310d2f371433eebc0ee7ff
Author: Ken Buchanan <kenrb@chromium.org>
Date: Fri Aug 31 19:29:00 2018

Capture mouse events to a widget during drag selection

Currently when the mouse cursor moves between OOPIF boundaries while
a selection is being dragged, the frame containing the selection stops
receiving mouse events. This causes a number of bugs such as the
relevant frame not being aware of when the mouse button is released.

This CL causes Blink's SelectionController to signal the browser
process for mouse capture to the current RenderWidgetHost.

Bug:  876662 ,  864957 ,  647378 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Id9d4bb6bdb6a3fa33b4e15af35a0588e952755fe
Reviewed-on: https://chromium-review.googlesource.com/1197409
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Commit-Queue: Ken Buchanan <kenrb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588115}
[modify] https://crrev.com/334029e1be165c014c310d2f371433eebc0ee7ff/content/browser/site_per_process_hit_test_browsertest.cc
[modify] https://crrev.com/334029e1be165c014c310d2f371433eebc0ee7ff/third_party/blink/renderer/core/editing/selection_controller.cc

Labels: -Target-67 -Target-68 -Target-69 Target-70
Status: Started (was: Assigned)
Ken, is there more to do for this bug?  I think I'm still able to repro the problem on Windows Canary 71.0.3543.0, though r588115 from comment 4 landed in 71.0.3539.0.
Yes, I have another CL in progress for this. The CL in comment #4 was sufficient to address the problem for OOPIFs but there is an additional change needed to fix it for PDFs, which I hadn't initially realized.
Project Member

Comment 7 by bugdroid1@chromium.org, Sep 10

Labels: merge-merged-3538
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/71492bd2eba9f53ef41d54ac93aa7c7121928d6b

commit 71492bd2eba9f53ef41d54ac93aa7c7121928d6b
Author: Ken Buchanan <kenrb@chromium.org>
Date: Mon Sep 10 17:46:33 2018

Capture mouse events to a widget during drag selection

Currently when the mouse cursor moves between OOPIF boundaries while
a selection is being dragged, the frame containing the selection stops
receiving mouse events. This causes a number of bugs such as the
relevant frame not being aware of when the mouse button is released.

This CL causes Blink's SelectionController to signal the browser
process for mouse capture to the current RenderWidgetHost.

Bug:  876662 ,  864957 ,  647378 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_layout_ng
Change-Id: Id9d4bb6bdb6a3fa33b4e15af35a0588e952755fe
Reviewed-on: https://chromium-review.googlesource.com/1197409
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Commit-Queue: Ken Buchanan <kenrb@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#588115}(cherry picked from commit 334029e1be165c014c310d2f371433eebc0ee7ff)
Reviewed-on: https://chromium-review.googlesource.com/1216715
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Cr-Commit-Position: refs/branch-heads/3538@{#226}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
[modify] https://crrev.com/71492bd2eba9f53ef41d54ac93aa7c7121928d6b/content/browser/site_per_process_hit_test_browsertest.cc
[modify] https://crrev.com/71492bd2eba9f53ef41d54ac93aa7c7121928d6b/third_party/blink/renderer/core/editing/selection_controller.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Oct 4

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

commit d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6
Author: Ken Buchanan <kenrb@chromium.org>
Date: Thu Oct 04 22:48:04 2018

Capture mouse input to plugins on MouseDown

When a user presses a mouse button over a PDF, the PDF receives all
mouse input until there is a corresponding MouseUp. This is currently
broken for OOPIFs because the browser process doesn't know when a PDF
is supposed to capture input and so it doesn't always route events to
the right process. This change causes renderers to signal the browser
process for mouse capture when a PDF is is clicked.

Bug:  864957 
Change-Id: If17587d5ca475d9a8ac03a3bba301d4084e6d4e3
Reviewed-on: https://chromium-review.googlesource.com/c/1203883
Commit-Queue: Ken Buchanan <kenrb@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: James MacLean <wjmaclean@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#596893}
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/content/browser/renderer_host/render_widget_host_input_event_router.cc
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/content/browser/renderer_host/render_widget_host_input_event_router.h
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/content/public/test/browser_test_utils.cc
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/content/public/test/browser_test_utils.h
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/extensions/browser/guest_view/mime_handler_view/mime_handler_view_browsertest.cc
[modify] https://crrev.com/d1d30d1cb3dc5ce0a18ec0fb129cf9e2d506a8b6/third_party/blink/renderer/core/exported/web_view_impl.cc

Status: Fixed (was: Started)

Sign in to add a comment