feat: enable select checkbox directly

This commit is contained in:
appflowy 2022-09-07 16:38:34 +08:00
parent c7db59c99b
commit 56fdc99990
3 changed files with 8 additions and 5 deletions

View File

@ -21,6 +21,9 @@ class BoardCheckboxCellBloc
didReceiveCellUpdate: (cellData) { didReceiveCellUpdate: (cellData) {
emit(state.copyWith(isSelected: _isSelected(cellData))); emit(state.copyWith(isSelected: _isSelected(cellData)));
}, },
select: () async {
cellController.saveCellData(!state.isSelected ? "Yes" : "No");
},
); );
}, },
); );
@ -50,6 +53,7 @@ class BoardCheckboxCellBloc
@freezed @freezed
class BoardCheckboxCellEvent with _$BoardCheckboxCellEvent { class BoardCheckboxCellEvent with _$BoardCheckboxCellEvent {
const factory BoardCheckboxCellEvent.initial() = _InitialCell; const factory BoardCheckboxCellEvent.initial() = _InitialCell;
const factory BoardCheckboxCellEvent.select() = _Selected;
const factory BoardCheckboxCellEvent.didReceiveCellUpdate( const factory BoardCheckboxCellEvent.didReceiveCellUpdate(
String cellContent) = _DidReceiveCellUpdate; String cellContent) = _DidReceiveCellUpdate;
} }

View File

@ -48,6 +48,9 @@ class _BoardCheckboxCellState extends State<BoardCheckboxCell> {
iconPadding: EdgeInsets.zero, iconPadding: EdgeInsets.zero,
icon: icon, icon: icon,
width: 20, width: 20,
onPressed: () => context
.read<BoardCheckboxCellBloc>()
.add(const BoardCheckboxCellEvent.select()),
), ),
); );
}, },

View File

@ -20,7 +20,7 @@ class CheckboxCellBloc extends Bloc<CheckboxCellEvent, CheckboxCellState> {
_startListening(); _startListening();
}, },
select: () async { select: () async {
_updateCellData(); cellController.saveCellData(!state.isSelected ? "Yes" : "No");
}, },
didReceiveCellUpdate: (cellData) { didReceiveCellUpdate: (cellData) {
emit(state.copyWith(isSelected: _isSelected(cellData))); emit(state.copyWith(isSelected: _isSelected(cellData)));
@ -49,10 +49,6 @@ class CheckboxCellBloc extends Bloc<CheckboxCellEvent, CheckboxCellState> {
} }
})); }));
} }
void _updateCellData() {
cellController.saveCellData(!state.isSelected ? "Yes" : "No");
}
} }
@freezed @freezed