diff --git a/tryton/gui/window/view_form/model/group.py b/tryton/gui/window/view_form/model/group.py index b6e7b3f070..bf19c3dc2d 100644 --- a/tryton/gui/window/view_form/model/group.py +++ b/tryton/gui/window/view_form/model/group.py @@ -100,18 +100,15 @@ class Group(SignalEvent, list): self.__getitem__(idx + 1) else: self.__getitem__(idx - 1).next[id(self)] = None - if not self.lock_signal: - self.signal('group-list-changed', ('record-removed', record)) + self.signal('group-list-changed', ('record-removed', record)) super(Group, self).remove(record) del self.__id2record[record.id] def clear(self): - if not self.lock_signal: - for record in self[:]: - self.signal('group-list-changed', ('record-removed', record)) - self.pop(0).destroy() - if not self.lock_signal: - self.signal('group-list-changed', ('group-cleared',)) + for record in self[:]: + self.signal('group-list-changed', ('record-removed', record)) + record.destroy() + self.pop(0) self.__id2record = {} self.record_removed, self.record_deleted = [], [] @@ -398,7 +395,6 @@ class Group(SignalEvent, list): del self.__id2record[old_id] def destroy(self): - self.lock_signal = True self.clear() super(Group, self).destroy() self.parent = None diff --git a/tryton/gui/window/view_form/view/list.py b/tryton/gui/window/view_form/view/list.py index a5746b84cc..c6586cfafe 100644 --- a/tryton/gui/window/view_form/view/list.py +++ b/tryton/gui/window/view_form/view/list.py @@ -632,9 +632,6 @@ class ViewList(ParserView): self.store.added(group, signal[1]) elif signal[0] == 'record-removed': self.store.removed(group, signal[1]) - elif signal[0] == 'group-cleared': - self.store = None - self.widget_tree.set_model(self.store) self.display() def cancel(self):