11import 'package:appflowy/generated/flowy_svgs.g.dart' ;
22import 'package:appflowy/generated/locale_keys.g.dart' ;
3- import 'package:appflowy/workspace/application/tabs/tab_menu_bloc.dart' ;
43import 'package:appflowy/workspace/application/tabs/tabs_bloc.dart' ;
54import 'package:appflowy/workspace/presentation/home/home_sizes.dart' ;
65import 'package:appflowy/workspace/presentation/home/home_stack.dart' ;
@@ -51,12 +50,7 @@ class _FlowyTabState extends State<FlowyTab> {
5150 showAtCursor: true ,
5251 popupBuilder: (_) => BlocProvider .value (
5352 value: context.read <TabsBloc >(),
54- child: BlocProvider <TabMenuBloc >(
55- create: (_) => TabMenuBloc (
56- viewId: widget.pageManager.plugin.id,
57- ),
58- child: TabMenu (pageId: widget.pageManager.plugin.id),
59- ),
53+ child: TabMenu (pageId: widget.pageManager.plugin.id),
6054 ),
6155 child: ChangeNotifierProvider .value (
6256 value: widget.pageManager.notifier,
@@ -126,56 +120,21 @@ class TabMenu extends StatelessWidget {
126120
127121 @override
128122 Widget build (BuildContext context) {
129- return BlocBuilder <TabMenuBloc , TabMenuState >(
130- builder: (context, state) {
131- if (state.maybeMap (
132- isLoading: (_) => true ,
133- orElse: () => false ,
134- )) {
135- return const SizedBox .shrink ();
136- }
137-
138- final disableFavoriteOption = state.maybeWhen (
139- isReady: (_) => false ,
140- orElse: () => true ,
141- );
142-
143- return SeparatedColumn (
144- separatorBuilder: () => const VSpace (4 ),
145- mainAxisSize: MainAxisSize .min,
146- children: [
147- FlowyButton (
148- text: FlowyText .regular (LocaleKeys .tabMenu_close.tr ()),
149- onTap: () => _closeTab (context),
150- ),
151- FlowyButton (
152- text: FlowyText .regular (
153- LocaleKeys .tabMenu_closeOthers.tr (),
154- ),
155- onTap: () => _closeOtherTabs (context),
156- ),
157- const Divider (height: 1 ),
158- _favoriteDisabledTooltip (
159- showTooltip: disableFavoriteOption,
160- child: FlowyButton (
161- disable: disableFavoriteOption,
162- text: FlowyText .regular (
163- state.maybeWhen (
164- isReady: (isFavorite) => isFavorite
165- ? LocaleKeys .tabMenu_unfavorite.tr ()
166- : LocaleKeys .tabMenu_favorite.tr (),
167- orElse: () => LocaleKeys .tabMenu_favorite.tr (),
168- ),
169- color: disableFavoriteOption
170- ? Theme .of (context).hintColor
171- : null ,
172- ),
173- onTap: () => _toggleFavorite (context),
174- ),
175- ),
176- ],
177- );
178- },
123+ return SeparatedColumn (
124+ separatorBuilder: () => const VSpace (4 ),
125+ mainAxisSize: MainAxisSize .min,
126+ children: [
127+ FlowyButton (
128+ text: FlowyText .regular (LocaleKeys .tabMenu_close.tr ()),
129+ onTap: () => _closeTab (context),
130+ ),
131+ FlowyButton (
132+ text: FlowyText .regular (
133+ LocaleKeys .tabMenu_closeOthers.tr (),
134+ ),
135+ onTap: () => _closeOtherTabs (context),
136+ ),
137+ ],
179138 );
180139 }
181140
@@ -184,21 +143,4 @@ class TabMenu extends StatelessWidget {
184143
185144 void _closeOtherTabs (BuildContext context) =>
186145 context.read <TabsBloc >().add (TabsEvent .closeOtherTabs (pageId));
187-
188- void _toggleFavorite (BuildContext context) =>
189- context.read <TabMenuBloc >().add (const TabMenuEvent .toggleFavorite ());
190-
191- Widget _favoriteDisabledTooltip ({
192- required bool showTooltip,
193- required Widget child,
194- }) {
195- if (showTooltip) {
196- return FlowyTooltip (
197- message: LocaleKeys .tabMenu_favoriteDisabledHint.tr (),
198- child: child,
199- );
200- }
201-
202- return child;
203- }
204146}
0 commit comments