Wrong hittest result for images in RTL blocks |
||
Issue descriptionChrome Version: 65.0.3325.181 (Official Build) (64-bit) OS: Linux What steps will reproduce the problem? (1) Navigate to https://jsfiddle.net/htvbyxxs/3/ (2) Drag mouse from leftmost to rightmost, or (3) Drag mouse from rightmost to leftmost What is the expected result? After both (2) and (3), all three images are selected What happens instead? Can't select all three images. Selection flickers.
,
May 17 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9a125e84b03f3e05299103f85ca0ae1f7fb7f3f4 commit 9a125e84b03f3e05299103f85ca0ae1f7fb7f3f4 Author: Xiaocheng Hu <xiaochengh@chromium.org> Date: Thu May 17 03:32:40 2018 Fix hit testing outside RTL atomic inlines LayoutBlock::PositionForPointIfOutsideAtomicInlineLevel() hard-maps the left side of an atomic inline to the DOM position at its start, and the right side to its end, which is wrong if the atomic inline is RTL. This patch fixes the issue. Note: this patch doesn't fix selection flickering when dragging mouse over an atomic inline surrounded by bidi text, due to bugs in bidi adjustment in SelectionController. Bug: 811502, 834066 Change-Id: Id1687922f3d713cb2eb4b8668cb0687196a2fc44 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_layout_tests_layout_ng Reviewed-on: https://chromium-review.googlesource.com/1062831 Reviewed-by: Yoichi Osato <yoichio@chromium.org> Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Reviewed-by: Koji Ishii <kojii@chromium.org> Commit-Queue: Xiaocheng Hu <xiaochengh@chromium.org> Cr-Commit-Position: refs/heads/master@{#559413} [add] https://crrev.com/9a125e84b03f3e05299103f85ca0ae1f7fb7f3f4/third_party/WebKit/LayoutTests/editing/selection/mouse/drag_selects_rtl_inline_block.html [modify] https://crrev.com/9a125e84b03f3e05299103f85ca0ae1f7fb7f3f4/third_party/blink/renderer/core/layout/layout_block.cc
,
May 17 2018
Hit test result is now correct. However, mouse dragging still creates flickering selections in some cases, due to (many) bug in bidi adjustment: https://jsfiddle.net/sd7r8mk8/7/ |
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, May 16 2018