fix undo-redo
This commit is contained in:
@@ -79,15 +79,16 @@ export default class Type extends Item {
|
||||
type = type._parent
|
||||
}
|
||||
}
|
||||
_copy (undeleteChildren) {
|
||||
let copy = super._copy()
|
||||
_copy (undeleteChildren, copyPosition) {
|
||||
let copy = super._copy(undeleteChildren, copyPosition)
|
||||
let map = new Map()
|
||||
copy._map = map
|
||||
for (let [key, value] of this._map) {
|
||||
if (undeleteChildren.has(value) || !value.deleted) {
|
||||
let _item = value._copy(undeleteChildren)
|
||||
let _item = value._copy(undeleteChildren, false)
|
||||
_item._parent = copy
|
||||
map.set(key, value._copy(undeleteChildren))
|
||||
_item._parentSub = key
|
||||
map.set(key, _item)
|
||||
}
|
||||
}
|
||||
let prevUndeleted = null
|
||||
@@ -95,7 +96,7 @@ export default class Type extends Item {
|
||||
let item = this._start
|
||||
while (item !== null) {
|
||||
if (undeleteChildren.has(item) || !item.deleted) {
|
||||
let _item = item._copy(undeleteChildren)
|
||||
let _item = item._copy(undeleteChildren, false)
|
||||
_item._left = prevUndeleted
|
||||
_item._origin = prevUndeleted
|
||||
_item._right = null
|
||||
|
||||
Reference in New Issue
Block a user