changeset 95d91b89bc0e in sao:default
details: https://hg.tryton.org/sao?cmd=changeset&node=95d91b89bc0e
description:
Get view_tree_state only for view with tree_state attribute set
issue11794
review415781003
diffstat:
src/screen.js | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
diffs (51 lines):
diff -r 50fff6657bda -r 95d91b89bc0e src/screen.js
--- a/src/screen.js Tue Nov 01 16:38:42 2022 +0100
+++ b/src/screen.js Sat Nov 05 09:59:44 2022 +0100
@@ -2158,7 +2158,7 @@
}
this.tree_states[parent_][view.children_field || null] = [
paths, selected_paths];
- if (store && view.attributes.tree_state) {
+ if (store && parseInt(view.attributes.tree_state, 10)) {
var tree_state_model = new Sao.Model(
'ir.ui.view_tree_state');
prm = tree_state_model.execute('set', [
@@ -2199,7 +2199,8 @@
!jQuery.isEmptyObject(this.tree_states_done)) {
return jQuery.when();
}
- if (view.view_type == 'tree' && !view.attributes.tree_state) {
+ if (view.view_type == 'tree' &&
+ !parseInt(view.attributes.tree_state, 10)) {
this.tree_states_done.push(view);
}
@@ -2211,7 +2212,8 @@
this.tree_states[parent_] = {};
}
state = this.tree_states[parent_][view.children_field || null];
- if (state === undefined) {
+ if ((state === undefined) &&
+ (parseInt(view.attributes.tree_state, 10))) {
tree_state_model = new Sao.Model('ir.ui.view_tree_state');
state_prm = tree_state_model.execute('get', [
this.model_name,
@@ -2235,12 +2237,15 @@
}
this.tree_states_done.push(view);
return state_prm.done(state => {
- var expanded_nodes, selected_nodes, record;
- expanded_nodes = state[0];
- selected_nodes = state[1];
+ var expanded_nodes = [], selected_nodes = [];
+ if (state) {
+ expanded_nodes = state[0];
+ selected_nodes = state[1];
+ }
if (view.view_type == 'tree') {
return view.display(selected_nodes, expanded_nodes);
} else {
+ var record;
if (!jQuery.isEmptyObject(selected_nodes)) {
for (const id of selected_nodes[0]) {
const new_record = this.group.get(id);