Add Supa account and search changes

This commit is contained in:
Fabian Freund
2026-05-22 18:10:22 +02:00
parent 3a19865b2e
commit 51289f1266
374 changed files with 54061 additions and 5013 deletions
@@ -19,7 +19,6 @@
*/
import 'dart:async';
import 'package:fading_scroll/fading_scroll.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:flutter_material_design_icons/flutter_material_design_icons.dart';
@@ -27,35 +26,62 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:weblibre/core/routing/routes.dart';
import 'package:weblibre/features/geckoview/features/browser/domain/services/browser_addon.dart';
import 'package:weblibre/features/settings/presentation/widgets/custom_list_tile.dart';
import 'package:weblibre/features/settings/presentation/widgets/sections.dart';
import 'package:weblibre/features/settings/presentation/widgets/settings_detail.dart';
const List<SettingsSectionDefinition> extensionsSettingsSections = [
SettingsSectionDefinition(
title: 'Extensions',
entries: [
SettingsEntryDefinition(
title: 'Manage Extensions',
subtitle:
'Browse installed, disabled, available, and unsupported extensions',
keywords: ['addons', 'browser extensions'],
child: _ManageExtensionsTile(),
),
SettingsEntryDefinition(
title: 'Custom Collection',
subtitle: 'Use a custom Mozilla addon collection',
keywords: ['addons'],
child: _AddonCollectionTile(),
),
],
),
SettingsSectionDefinition(
title: 'Updates',
entries: [
SettingsEntryDefinition(
title: 'Automatic updates',
subtitle:
'Automatically check for and install extension updates every 12 hours',
keywords: ['addons'],
child: _AutoUpdateTile(),
),
],
),
SettingsSectionDefinition(
title: 'Security',
entries: [
SettingsEntryDefinition(
title: 'Allow unsigned extensions',
subtitle: 'Unsigned extensions have not been verified by Mozilla',
keywords: ['addons'],
child: _AllowUnsignedExtensionsTile(),
),
],
),
];
class ExtensionsSettingsScreen extends StatelessWidget {
const ExtensionsSettingsScreen({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Extensions')),
body: SafeArea(
child: FadingScroll(
fadingSize: 25,
builder: (context, controller) {
return ListView(
controller: controller,
padding: const EdgeInsets.symmetric(horizontal: 12.0),
children: const [
SettingSection(name: 'Extensions'),
_ManageExtensionsTile(),
_AddonCollectionTile(),
SettingSection(name: 'Updates'),
_AutoUpdateTile(),
SettingSection(name: 'Security'),
_AllowUnsignedExtensionsTile(),
],
);
},
),
),
return const SettingsDetailScaffold(
title: 'Extensions',
subtitle: 'Manage add-ons, update behavior, and extension security.',
icon: MdiIcons.puzzleOutline,
sections: extensionsSettingsSections,
);
}
}