addObserver method
Registers a consumer to observe changes on this node.
Implementation
@override
void addObserver(Consumer consumer) {
// Dependency trackers temporarily unsubscribe before each rerun. Treating
// that internal retracking as a new listener would restart lazy async
// signals forever, so onListen is reserved for the first observation and
// for revival after auto-disposal.
final shouldTriggerListen = isDisposed || !_hasBeenObserved;
if (isDisposed) {
isDisposed = false;
}
_hasBeenObserved = true;
super.addObserver(consumer);
if (shouldTriggerListen) {
onListenCallback?.call();
}
}