fuard for enabled extensions

This commit is contained in:
Fabian Freund
2026-07-06 17:56:24 +02:00
parent 1b1c33dee5
commit 0eb5822011
3 changed files with 14 additions and 10 deletions
@@ -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();
@@ -534,13 +534,11 @@ final List<ToolbarButtonDefinition> 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));
@@ -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,
),
);
}
}