mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-09-23 15:38:07 +00:00
fix: crash on delete button press caused by GoRouter (#6629)
* fix: crash on delete button press caused by GoRouter * fix: gorouter pop
This commit is contained in:
parent
a42b6e02ab
commit
eafd0b3353
@ -9,7 +9,6 @@ import 'package:appflowy/plugins/shared/share/constants.dart';
|
||||
import 'package:appflowy/plugins/shared/share/publish_name_generator.dart';
|
||||
import 'package:appflowy/plugins/shared/share/share_bloc.dart';
|
||||
import 'package:appflowy/startup/startup.dart';
|
||||
import 'package:appflowy/util/navigator_context_exntesion.dart';
|
||||
import 'package:appflowy/workspace/application/favorite/favorite_bloc.dart';
|
||||
import 'package:appflowy/workspace/application/view/prelude.dart';
|
||||
import 'package:appflowy/workspace/presentation/widgets/dialogs.dart';
|
||||
@ -24,10 +23,15 @@ class MobileViewPageMoreBottomSheet extends StatelessWidget {
|
||||
const MobileViewPageMoreBottomSheet({super.key, required this.view});
|
||||
|
||||
final ViewPB view;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return ViewPageBottomSheet(
|
||||
return BlocListener<ViewBloc, ViewState>(
|
||||
listener: (context, state) {
|
||||
if (state.successOrFailure.isSuccess && state.isDeleted) {
|
||||
context.go('/home');
|
||||
}
|
||||
},
|
||||
child: ViewPageBottomSheet(
|
||||
view: view,
|
||||
onAction: (action) async {
|
||||
switch (action) {
|
||||
@ -37,7 +41,7 @@ class MobileViewPageMoreBottomSheet extends StatelessWidget {
|
||||
break;
|
||||
case MobileViewBottomSheetBodyAction.delete:
|
||||
context.read<ViewBloc>().add(const ViewEvent.delete());
|
||||
context.popToHome();
|
||||
context.pop();
|
||||
break;
|
||||
case MobileViewBottomSheetBodyAction.addToFavorites:
|
||||
case MobileViewBottomSheetBodyAction.removeFromFavorites:
|
||||
@ -87,6 +91,7 @@ class MobileViewPageMoreBottomSheet extends StatelessWidget {
|
||||
_onRename(context, name);
|
||||
context.pop();
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -154,6 +154,7 @@ class ViewBloc extends Bloc<ViewEvent, ViewState> {
|
||||
(l) {
|
||||
return state.copyWith(
|
||||
successOrFailure: FlowyResult.success(null),
|
||||
isDeleted: true,
|
||||
);
|
||||
},
|
||||
(error) => state.copyWith(
|
||||
@ -478,6 +479,7 @@ class ViewState with _$ViewState {
|
||||
required bool isEditing,
|
||||
required bool isExpanded,
|
||||
required FlowyResult<void, FlowyError> successOrFailure,
|
||||
@Default(false) bool isDeleted,
|
||||
@Default(true) bool isLoading,
|
||||
@Default(null) ViewPB? lastCreatedView,
|
||||
}) = _ViewState;
|
||||
|
Loading…
x
Reference in New Issue
Block a user