New issue
Advanced search Search tips

Issue 694816 link

Starred by 1 user

Issue metadata

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



Sign in to add a comment

InsertInto/DeleteFromTextNodeCommand should not update layout at end of doApply()

Project Member Reported by xiaoche...@chromium.org, Feb 21 2017

Issue description

InsertInto/DeleteFromTextNodeCommand should not update layout at the end of doApply(), as there is no clear client of clean layout.

We should remove the two layout update calls, and for clients requiring clean layout, update explicitly.
 

Comment 1 by yosin@chromium.org, Feb 22 2017

Status: Started (was: Assigned)
Taken from the patch[1]:

Only four failures:
1 editing/inserting/insert-composition-whitespace.html
2 editing/inserting/insert-html-crash.html
3 editing/style/apply-through-end-of-document.html
4 fast/spatial-navigation/snav-z-index.html

It is fewer than expected. :-)


[1] http://crrev.com/2705373002: Remove unnecessary layout updates from InsertInto/DeleteFromTextNodeCommand
Project Member

Comment 2 by bugdroid1@chromium.org, Feb 22 2017

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

commit 7a0a5316f12d0873b3c17a29157b703cf4f1ae36
Author: xiaochengh <xiaochengh@chromium.org>
Date: Wed Feb 22 08:42:34 2017

Remove unnecessary layout updates from InsertInto/DeleteFromTextNodeCommand

InsertInto/DeleteFromTextNodeCommand used to update layout at the
end of doApply() and unApply(), which is bad because the client
of the clean layout is unclear, and unnecessary layout updates
may be performed.

This patch removes these layout update calls, and explicitly updates
layout before clients.

BUG= 694816 
TEST=n/a; no behavior change

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

[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/CompositeEditCommand.cpp
[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/DeleteFromTextNodeCommand.cpp
[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/InsertIntoTextNodeCommand.cpp
[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/InsertLineBreakCommand.cpp
[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/InsertTextCommand.cpp
[modify] https://crrev.com/7a0a5316f12d0873b3c17a29157b703cf4f1ae36/third_party/WebKit/Source/core/editing/commands/ReplaceSelectionCommand.cpp

Labels: M-58
Status: Fixed (was: Started)

Sign in to add a comment