From 39d8ca7e1b54f3f9e5ed4f2b02185dbf49516d4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Mon, 10 Jun 2024 17:23:18 +0200 Subject: [PATCH] Do not re-select all records if current record is empty and selection is checked This happens when the current record is removed when it is deleted. Closes #13325 (grafted from 5e74c9cef4b5b04930e1c5da61c576070da1a1ca) --HG-- branch : 6.0 --- sao/src/view/tree.js | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/sao/src/view/tree.js b/sao/src/view/tree.js index 79b1ae3918..8c4c49ab0d 100644 --- a/sao/src/view/tree.js +++ b/sao/src/view/tree.js @@ -564,7 +564,7 @@ var tbody = this.tbody; var current_record = this.record; - if (jQuery.isEmptyObject(selected)) { + if (jQuery.isEmptyObject(selected) && current_record) { selected = this.get_selected_paths(); if (this.selection.prop('checked') && !this.selection.prop('indeterminate')) { @@ -574,16 +574,12 @@ selected.push([record.id]); }); } else { - if (current_record) { - var current_path = current_record.get_path(this.group); - current_path = current_path.map(function(e) { - return e[1]; - }); - if (!Sao.common.contains(selected, current_path)) { - selected = [current_path]; - } - } else if (!current_record) { - selected = []; + var current_path = current_record.get_path(this.group); + current_path = current_path.map(function(e) { + return e[1]; + }); + if (!Sao.common.contains(selected, current_path)) { + selected = [current_path]; } } }