mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
fix: await the cell dispose (#1437)
This commit is contained in:
parent
840095d73c
commit
f426745094
@ -35,7 +35,7 @@ class BoardCheckboxCellBloc
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class BoardDateCellBloc extends Bloc<BoardDateCellEvent, BoardDateCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ class BoardNumberCellBloc
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ class BoardSelectOptionCellBloc
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ class BoardTextCellBloc extends Bloc<BoardTextCellEvent, BoardTextCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ class BoardURLCellBloc extends Bloc<BoardURLCellEvent, BoardURLCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -290,20 +290,20 @@ class IGridCellController<T, D> extends Equatable {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void dispose() {
|
Future<void> dispose() async {
|
||||||
if (_isDispose) {
|
if (_isDispose) {
|
||||||
Log.error("$this should only dispose once");
|
Log.error("$this should only dispose once");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_isDispose = true;
|
_isDispose = true;
|
||||||
_cellListener?.stop();
|
await _cellListener?.stop();
|
||||||
_loadDataOperation?.cancel();
|
_loadDataOperation?.cancel();
|
||||||
_saveDataOperation?.cancel();
|
_saveDataOperation?.cancel();
|
||||||
_cellDataNotifier = null;
|
_cellDataNotifier = null;
|
||||||
|
|
||||||
if (_onFieldChangedFn != null) {
|
if (_onFieldChangedFn != null) {
|
||||||
_fieldNotifier.unregister(_cacheKey, _onFieldChangedFn!);
|
_fieldNotifier.unregister(_cacheKey, _onFieldChangedFn!);
|
||||||
_fieldNotifier.dispose();
|
await _fieldNotifier.dispose();
|
||||||
_onFieldChangedFn = null;
|
_onFieldChangedFn = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ class CheckboxCellBloc extends Bloc<CheckboxCellEvent, CheckboxCellState> {
|
|||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ class DateCalBloc extends Bloc<DateCalEvent, DateCalState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ class DateCellBloc extends Bloc<DateCellEvent, DateCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ class NumberCellBloc extends Bloc<NumberCellEvent, NumberCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ class SelectOptionCellBloc
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -81,7 +81,7 @@ class SelectOptionCellEditorBloc
|
|||||||
@override
|
@override
|
||||||
Future<void> close() async {
|
Future<void> close() async {
|
||||||
_delayOperation?.cancel();
|
_delayOperation?.cancel();
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ class TextCellBloc extends Bloc<TextCellEvent, TextCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ class URLCellBloc extends Bloc<URLCellEvent, URLCellState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ class URLCellEditorBloc extends Bloc<URLCellEditorEvent, URLCellEditorState> {
|
|||||||
cellController.removeListener(_onCellChangedFn!);
|
cellController.removeListener(_onCellChangedFn!);
|
||||||
_onCellChangedFn = null;
|
_onCellChangedFn = null;
|
||||||
}
|
}
|
||||||
cellController.dispose();
|
await cellController.dispose();
|
||||||
return super.close();
|
return super.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user