reset tree_states_done when setting a screen group
The O2M screen's tree_states_done property is filled with the view id, this property is used to know when the state must be set or not. This has the effect of not restoring the state of O2M widget when switching from a record to another. This change fixes this behavior. issue3609 review2791003
This commit is contained in:
1 parent
2cd0da0d57
commit
09ceaba41b
1 file changed
+4
-3
@@ -76,6 +76,9 @@ class Screen(SignalEvent):
|
||||
self.parent_name = None
|
||||
self.exclude_field = exclude_field
|
||||
self.filter_widget = None
|
||||
self.tree_states = collections.defaultdict(
|
||||
lambda: collections.defaultdict(lambda: None))
|
||||
self.tree_states_done = set()
|
||||
self.__group = None
|
||||
self.new_group()
|
||||
self.__current_record = None
|
||||
@@ -88,9 +91,6 @@ class Screen(SignalEvent):
|
||||
self.fields_view_tree = None
|
||||
self.order = order
|
||||
self.view_to_load = []
|
||||
self.tree_states = collections.defaultdict(
|
||||
lambda: collections.defaultdict(lambda: None))
|
||||
self.tree_states_done = set()
|
||||
self.domain_parser = None
|
||||
self.pre_validate = False
|
||||
self.view_to_load = mode[:]
|
||||
@@ -242,6 +242,7 @@ class Screen(SignalEvent):
|
||||
self.group.signal_unconnect(self)
|
||||
for name, field in self.group.fields.iteritems():
|
||||
fields[name] = field.attrs
|
||||
self.tree_states_done.clear()
|
||||
self.__group = group
|
||||
self.parent = group.parent
|
||||
self.parent_name = group.parent_name
|
||||
|
||||
Reference in new issue
Block a user