summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/basic/basic_model.js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src/js/views/basic/basic_model.js')
-rw-r--r--addons/web/static/src/js/views/basic/basic_model.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/addons/web/static/src/js/views/basic/basic_model.js b/addons/web/static/src/js/views/basic/basic_model.js
index 0c2bbd4d23e..deb14b8bf83 100644
--- a/addons/web/static/src/js/views/basic/basic_model.js
+++ b/addons/web/static/src/js/views/basic/basic_model.js
@@ -2113,9 +2113,11 @@ var BasicModel = AbstractModel.extend({
if (oldGroup) {
// restore the internal state of the group
_.extend(newGroup, _.pick(oldGroup, 'limit', 'isOpen', 'offset'));
- // if open, also restore the oldGroup data to keep internal
- // state of sub-groups
- newGroup.data = oldGroup.isOpen ? oldGroup.data : [];
+ // if the group is open and contains subgroups, also
+ // restore its data to keep internal state of sub-groups
+ if (newGroup.isOpen && newGroup.groupedBy.length) {
+ newGroup.data = oldGroup.data;
+ }
} else if (!newGroup.openGroupByDefault) {
newGroup.isOpen = false;
} else {