Visual diffing: Deleting a table row doesn't append the removed cells in the right place
Closed, ResolvedPublic8 Story Points

Description

Having cleaned up the DiffElement code to use raw DOM operations instead of jQuery, we can see that the actual DOM being returned is less correct that we thought:

The removed cells are actually nested inside the cells to their left, but jQuery was fixing this:

Esanders created this task.Feb 22 2017, 2:27 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 22 2017, 2:27 PM

See commit https://gerrit.wikimedia.org/r/#/c/339178/ which exposes this behaviour.

Looks like the splicer is using node.getRange() instead of node.getOuterRange()

Change 339184 had a related patch set uploaded (by Esanders):
Use node.get*Outer*Range() when splicing in removes

https://gerrit.wikimedia.org/r/339184

Change 339184 merged by jenkins-bot:
Use node.get*Outer*Range() when splicing in removes

https://gerrit.wikimedia.org/r/339184

Change 339481 had a related patch set uploaded (by Jforrester):
Update VE core submodule to master (813c586a6)

https://gerrit.wikimedia.org/r/339481

Change 339481 merged by jenkins-bot:
Update VE core submodule to master (813c586a6)

https://gerrit.wikimedia.org/r/339481

Jdforrester-WMF closed this task as Resolved.Feb 23 2017, 8:09 PM
Jdforrester-WMF triaged this task as Normal priority.
Jdforrester-WMF assigned this task to Esanders.
Jdforrester-WMF set the point value for this task to 8.
Jdforrester-WMF edited projects, added VisualEditor-Tables; removed Patch-For-Review.