From 32fc5e300b5211ff9ccf111af862d42ba481e76f Mon Sep 17 00:00:00 2001 From: Ian Gulliver Date: Wed, 10 Jul 2019 21:41:26 +0000 Subject: [PATCH] Make deleteAfter obey mayDelete --- List.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/List.js b/List.js index 43fe563..5b34c1c 100644 --- a/List.js +++ b/List.js @@ -38,14 +38,18 @@ class List { deleteSelectedAndAfter() { let sel = this.getSelected(); - if (sel) { - // TODO: fix to obey mayDelete() - while (this.container_.lastElementChild != sel && - this.container_.children.length > this.minEntries_) { - this.container_.lastElementChild.xArchObj.remove(); - } - this.deleteSelected(); + if (!sel) { + return; } + let iter = this.container_.lastElementChild; + while (iter != sel) { + let next = iter.previousElementSibling; + if (this.mayDelete(iter.xArchObj.constructor)) { + iter.xArchObj.remove(); + } + iter = next; + } + this.deleteSelected(); } selectNext() {