From 2b725f8f7110872b0f6adb67a5172f814e2dc478 Mon Sep 17 00:00:00 2001 From: appflowy Date: Fri, 26 Aug 2022 08:32:25 +0800 Subject: [PATCH] chore: add remove out of bound guard --- .../board/presentation/card/board_select_option_cell.dart | 3 +++ .../lib/src/widgets/board_column/board_column_data.dart | 4 ++++ .../lib/src/widgets/reorder_flex/drag_target.dart | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/app_flowy/lib/plugins/board/presentation/card/board_select_option_cell.dart b/frontend/app_flowy/lib/plugins/board/presentation/card/board_select_option_cell.dart index f1da64579e..faed598d09 100644 --- a/frontend/app_flowy/lib/plugins/board/presentation/card/board_select_option_cell.dart +++ b/frontend/app_flowy/lib/plugins/board/presentation/card/board_select_option_cell.dart @@ -37,6 +37,9 @@ class _BoardSelectOptionCellState extends State { return BlocProvider.value( value: _cellBloc, child: BlocBuilder( + // buildWhen: (previous, current) { + // return previous.selectedOptions != current.selectedOptions; + // }, builder: (context, state) { if (state.selectedOptions .where((element) => element.id == widget.groupId) diff --git a/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/board_column/board_column_data.dart b/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/board_column/board_column_data.dart index 0015ebd479..bc442acd2a 100644 --- a/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/board_column/board_column_data.dart +++ b/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/board_column/board_column_data.dart @@ -121,6 +121,10 @@ class AFBoardColumnDataController extends ChangeNotifier with EquatableMixin { columnData._items.add(newItem); Log.debug('[$AFBoardColumnDataController] $columnData add $newItem'); } else { + if (index >= columnData._items.length) { + return; + } + final removedItem = columnData._items.removeAt(index); columnData._items.insert(index, newItem); Log.debug( diff --git a/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/reorder_flex/drag_target.dart b/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/reorder_flex/drag_target.dart index 8217d2736f..a091e9711a 100644 --- a/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/reorder_flex/drag_target.dart +++ b/frontend/app_flowy/packages/appflowy_board/lib/src/widgets/reorder_flex/drag_target.dart @@ -140,7 +140,7 @@ class _ReorderDragTargetState widget.insertAnimationController, widget.deleteAnimationController, ) ?? - LongPressDraggable( + Draggable( maxSimultaneousDrags: 1, data: widget.dragTargetData, ignoringFeedbackSemantics: false,