diff --git a/apps/weblibre/lib/features/addons/presentation/widgets/pinned_addon_bar.dart b/apps/weblibre/lib/features/addons/presentation/widgets/pinned_addon_bar.dart index 69836ac2..d6d2074f 100644 --- a/apps/weblibre/lib/features/addons/presentation/widgets/pinned_addon_bar.dart +++ b/apps/weblibre/lib/features/addons/presentation/widgets/pinned_addon_bar.dart @@ -45,7 +45,7 @@ class PinnedAddonBar extends ConsumerWidget { ); final pinned = extensions - .where((e) => pinnedIds.contains(e.extensionId)) + .where((e) => e.enabled && pinnedIds.contains(e.extensionId)) .toList(); if (pinned.isEmpty) return const SizedBox.shrink(); diff --git a/apps/weblibre/lib/features/geckoview/features/browser/features/contextual_toolbar/presentation/toolbar_button_registry.dart b/apps/weblibre/lib/features/geckoview/features/browser/features/contextual_toolbar/presentation/toolbar_button_registry.dart index 62537feb..0f3909fd 100644 --- a/apps/weblibre/lib/features/geckoview/features/browser/features/contextual_toolbar/presentation/toolbar_button_registry.dart +++ b/apps/weblibre/lib/features/geckoview/features/browser/features/contextual_toolbar/presentation/toolbar_button_registry.dart @@ -534,13 +534,11 @@ final List toolbarButtonRegistry = [ label: 'Extensions', icon: MdiIcons.puzzle, longPressActions: ['Extensions Menu'], - isPrimaryAvailable: (scope, ref) => ref - .read( - webExtensionsStateProvider( - WebExtensionActionType.browser, - ).select((value) => value.values), - ) - .isNotEmpty, + isPrimaryAvailable: (scope, ref) => ref.read( + webExtensionsStateProvider( + WebExtensionActionType.browser, + ).select((value) => value.values.any((extension) => extension.enabled)), + ), builder: (scope, context, ref) { if (scope.isPreview) { return IconButton(onPressed: () {}, icon: const Icon(MdiIcons.puzzle)); diff --git a/apps/weblibre/lib/features/geckoview/features/browser/presentation/widgets/extension_shortcut_menu.dart b/apps/weblibre/lib/features/geckoview/features/browser/presentation/widgets/extension_shortcut_menu.dart index 67b19550..4423029c 100644 --- a/apps/weblibre/lib/features/geckoview/features/browser/presentation/widgets/extension_shortcut_menu.dart +++ b/apps/weblibre/lib/features/geckoview/features/browser/presentation/widgets/extension_shortcut_menu.dart @@ -46,7 +46,10 @@ class ExtensionShortcutMenu extends HookConsumerWidget { ).select((value) => value.values.toList()), ); final unpinnedBrowserExtensions = browserExtensions - .where((extension) => !pinnedIds.contains(extension.extensionId)) + .where( + (extension) => + extension.enabled && !pinnedIds.contains(extension.extensionId), + ) .toList(); return MenuAnchor( @@ -82,7 +85,10 @@ class ExtensionShortcutMenu extends HookConsumerWidget { child: const Text('Manage extensions'), ), ], - child: Visibility(visible: browserExtensions.isNotEmpty, child: child), + child: Visibility( + visible: browserExtensions.any((extension) => extension.enabled), + child: child, + ), ); } }