|
|
Chromium Code Reviews|
Created:
4 years, 3 months ago by Xiaocheng Modified:
4 years, 3 months ago Reviewers:
yosin_UTC9 CC:
blink-reviews, chromium-reviews Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionPrune CreateVisiblePositionDeprecated from SelectionController
BUG=647219
Committed: https://crrev.com/f42cd8c43eac573dab21b9599aaa095c3a4f9745
Cr-Commit-Position: refs/heads/master@{#419968}
Patch Set 1 #Patch Set 2 : Update layout in handleMouseReleaseEvent and passMousePressEventToSubframe #Messages
Total messages: 18 (12 generated)
The CQ bit was checked by xiaochengh@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
xiaochengh@chromium.org changed reviewers: + yosin@chromium.org
PTAL. At first I thought that a function with a HitTestResult parameter must be called with clean layout, which turns out to be wrong in SelectionController::updateSelectionForMouseDrag. Is this still desired, and why?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm On 2016/09/20 at 07:08:51, xiaochengh wrote: > PTAL. > > At first I thought that a function with a HitTestResult parameter must be called with clean layout, which turns out to be wrong in SelectionController::updateSelectionForMouseDrag. > > Is this still desired, and why? No. HitTestResult parameter can be used in dirty tree. The hit test must be done with clean layout tree, |LayoutView::hitTest()| calls |frameView()->updateLifecycleToCompositingCleanPlusScrolling()|. Once, event path is computed, it is done before calling event handlers, it is OK to make layout tree dirty, JS event handler can modify DOM tree. I'm pretty sure press and release handler can be called with dirty layout tree due by JS event handler. Also, I confirmed |SelectionController::updateSelectionForMouseDrag()| is called after |updatePointerTargetAndDispatchEvents(()| in |EventHandler::handleMouseMoveOrLeaveEvent()|. So, |updateSelectionForMouseDrag()| is called with dirty layout tree.
The CQ bit was checked by xiaochengh@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Added layout update to handleMouseReleaseEvent and passMousePressEventToSubframe, instead of just waiting for ClusterFuzz to catch me.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by xiaochengh@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from yosin@chromium.org Link to the patchset: https://codereview.chromium.org/2353893002/#ps20001 (title: "Update layout in handleMouseReleaseEvent and passMousePressEventToSubframe")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Committed patchset #2 (id:20001)
Message was sent while issue was closed.
Description was changed from ========== Prune CreateVisiblePositionDeprecated from SelectionController BUG=647219 ========== to ========== Prune CreateVisiblePositionDeprecated from SelectionController BUG=647219 Committed: https://crrev.com/f42cd8c43eac573dab21b9599aaa095c3a4f9745 Cr-Commit-Position: refs/heads/master@{#419968} ==========
Message was sent while issue was closed.
Patchset 2 (id:??) landed as https://crrev.com/f42cd8c43eac573dab21b9599aaa095c3a4f9745 Cr-Commit-Position: refs/heads/master@{#419968} |
