fix: should not notify the parent node when the subtype is not changed

This commit is contained in:
Lucas.Xu 2022-09-26 16:54:13 +08:00
parent e8f5b1ade3
commit 49fb0470ab

View File

@ -93,12 +93,14 @@ class Node extends ChangeNotifier with LinkedListEntry<Node> {
}
void updateAttributes(Attributes attributes) {
bool shouldNotifyParent = _attributes['subtype'] != attributes['subtype'];
final oldAttributes = {..._attributes};
_attributes = composeAttributes(_attributes, attributes) ?? {};
// Notifies the new attributes
// if attributes contains 'subtype', should notify parent to rebuild node
// else, just notify current node.
bool shouldNotifyParent =
_attributes['subtype'] != oldAttributes['subtype'];
shouldNotifyParent ? parent?.notifyListeners() : notifyListeners();
}