new: rebuild impl

This commit is contained in:
lollipopkit
2023-09-21 19:24:05 +08:00
parent 453eb200a8
commit cc4a05bf11
7 changed files with 51 additions and 60 deletions

View File

@@ -0,0 +1,33 @@
import 'package:flutter/foundation.dart';
// ignore: prefer_void_to_null
class _RebuildNode implements ValueListenable<Null> {
final List<VoidCallback> _listeners = [];
_RebuildNode();
@override
void addListener(VoidCallback listener) {
_listeners.add(listener);
}
@override
void removeListener(VoidCallback listener) {
_listeners.remove(listener);
}
void rebuild() {
for (var listener in _listeners) {
listener();
}
}
@override
Null get value => null;
}
class RebuildNodes {
const RebuildNodes._();
static final _RebuildNode app = _RebuildNode();
}