integrate docs

This commit is contained in:
Fabian Freund
2025-06-25 12:36:01 +02:00
parent 1c9cd3e4f9
commit c29031a15d
4 changed files with 36 additions and 0 deletions
+3
View File
@@ -9,3 +9,6 @@ Color lightSeedColorFallback(Ref ref) => const Color(0xFF167C80);
@Riverpod(keepAlive: true)
Color darkSeedColorFallback(Ref ref) => const Color(0xFF167C80);
@Riverpod(keepAlive: true)
Uri docsUri(Ref ref) => Uri.parse('https://docs.weblibre.eu/');
+17
View File
@@ -42,5 +42,22 @@ final darkSeedColorFallbackProvider = Provider<Color>.internal(
@Deprecated('Will be removed in 3.0. Use Ref instead')
// ignore: unused_element
typedef DarkSeedColorFallbackRef = ProviderRef<Color>;
String _$docsUriHash() => r'6456efcf97ddc7ee87a67e2d3380f7241e3d76ea';
/// See also [docsUri].
@ProviderFor(docsUri)
final docsUriProvider = Provider<Uri>.internal(
docsUri,
name: r'docsUriProvider',
debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product')
? null
: _$docsUriHash,
dependencies: null,
allTransitiveDependencies: null,
);
@Deprecated('Will be removed in 3.0. Use Ref instead')
// ignore: unused_element
typedef DocsUriRef = ProviderRef<Uri>;
// ignore_for_file: type=lint
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
@@ -5,6 +5,7 @@ import 'package:flutter_mozilla_components/flutter_mozilla_components.dart';
import 'package:go_router/go_router.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:share_plus/share_plus.dart';
import 'package:weblibre/core/providers/defaults.dart';
import 'package:weblibre/core/routing/routes.dart';
import 'package:weblibre/features/geckoview/domain/controllers/bottom_sheet.dart';
import 'package:weblibre/features/geckoview/domain/providers.dart';
@@ -177,6 +178,15 @@ class BrowserBottomAppBar extends HookConsumerWidget {
leadingIcon: const Icon(Icons.info),
child: const Text('About'),
),
MenuItemButton(
onPressed: () async {
await ref
.read(tabRepositoryProvider.notifier)
.addTab(url: ref.read(docsUriProvider));
},
leadingIcon: const Icon(Icons.help),
child: const Text('Help and feedback'),
),
const Divider(),
MenuItemButton(
onPressed: () async {
@@ -2,7 +2,9 @@ import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:smooth_page_indicator/smooth_page_indicator.dart';
import 'package:weblibre/core/providers/defaults.dart';
import 'package:weblibre/core/providers/router.dart';
import 'package:weblibre/features/geckoview/domain/repositories/tab.dart';
import 'package:weblibre/features/onboarding/presentation/pages/abstract/i_form_page.dart';
import 'package:weblibre/features/onboarding/presentation/pages/default_search.dart';
import 'package:weblibre/features/onboarding/presentation/pages/ublock_opt_in.dart';
@@ -112,6 +114,10 @@ class OnboardingScreen extends HookConsumerWidget {
.read(onboardingRepositoryProvider.notifier)
.pushRevision(targetRevision);
await ref
.read(tabRepositoryProvider.notifier)
.addTab(url: ref.read(docsUriProvider));
ref.invalidate(routerProvider);
},
iconAlignment: IconAlignment.end,