new home screen

This commit is contained in:
Fabian Freund
2026-08-04 16:03:30 +02:00
parent 3def036b3b
commit dbfcd1daaa
62 changed files with 6302 additions and 1496 deletions
@@ -55,6 +55,7 @@ import 'package:weblibre/features/geckoview/features/history/presentation/screen
import 'package:weblibre/features/geckoview/features/open_link_tools/presentation/dialogs/open_shared_content.dart';
import 'package:weblibre/features/geckoview/features/open_link_tools/presentation/screens/unshortener_settings.dart';
import 'package:weblibre/features/geckoview/features/open_link_tools/presentation/screens/url_cleaner_settings.dart';
import 'package:weblibre/features/geckoview/features/search/domain/providers/search_modules_view.dart';
import 'package:weblibre/features/geckoview/features/search/presentation/screens/search.dart';
import 'package:weblibre/features/geckoview/features/tabs/data/models/container_data.dart';
import 'package:weblibre/features/geckoview/features/tabs/presentation/screens/container_draft_suggestions.dart';
@@ -82,7 +83,9 @@ import 'package:weblibre/features/settings/presentation/screens/experimental_set
import 'package:weblibre/features/settings/presentation/screens/extensions_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/fingerprint_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/general_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/home_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/locale_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/module_surface_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/privacy_security_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/proxy_settings.dart';
import 'package:weblibre/features/settings/presentation/screens/search_settings.dart';
@@ -1674,6 +1674,21 @@ RouteBase get $settingsRoute => GoRouteData.$route(
name: 'UnshortenerSettingsRoute',
factory: $UnshortenerSettingsRoute._fromState,
),
GoRouteData.$route(
path: 'home',
name: 'HomeSettingsRoute',
factory: $HomeSettingsRoute._fromState,
),
GoRouteData.$route(
path: 'home_modules',
name: 'HomeModulesSettingsRoute',
factory: $HomeModulesSettingsRoute._fromState,
),
GoRouteData.$route(
path: 'new_tab_modules',
name: 'NewTabModulesSettingsRoute',
factory: $NewTabModulesSettingsRoute._fromState,
),
GoRouteData.$route(
path: 'contextual_toolbar',
name: 'ContextualToolbarSettingsRoute',
@@ -2295,6 +2310,69 @@ mixin $UnshortenerSettingsRoute on GoRouteData {
void replace(BuildContext context) => context.replace(location);
}
mixin $HomeSettingsRoute on GoRouteData {
static HomeSettingsRoute _fromState(GoRouterState state) =>
const HomeSettingsRoute();
@override
String get location => GoRouteData.$location('/settings/home');
@override
void go(BuildContext context) => context.go(location);
@override
Future<T?> push<T>(BuildContext context) => context.push<T>(location);
@override
void pushReplacement(BuildContext context) =>
context.pushReplacement(location);
@override
void replace(BuildContext context) => context.replace(location);
}
mixin $HomeModulesSettingsRoute on GoRouteData {
static HomeModulesSettingsRoute _fromState(GoRouterState state) =>
const HomeModulesSettingsRoute();
@override
String get location => GoRouteData.$location('/settings/home_modules');
@override
void go(BuildContext context) => context.go(location);
@override
Future<T?> push<T>(BuildContext context) => context.push<T>(location);
@override
void pushReplacement(BuildContext context) =>
context.pushReplacement(location);
@override
void replace(BuildContext context) => context.replace(location);
}
mixin $NewTabModulesSettingsRoute on GoRouteData {
static NewTabModulesSettingsRoute _fromState(GoRouterState state) =>
const NewTabModulesSettingsRoute();
@override
String get location => GoRouteData.$location('/settings/new_tab_modules');
@override
void go(BuildContext context) => context.go(location);
@override
Future<T?> push<T>(BuildContext context) => context.push<T>(location);
@override
void pushReplacement(BuildContext context) =>
context.pushReplacement(location);
@override
void replace(BuildContext context) => context.replace(location);
}
mixin $ContextualToolbarSettingsRoute on GoRouteData {
static ContextualToolbarSettingsRoute _fromState(GoRouterState state) =>
const ContextualToolbarSettingsRoute();
@@ -117,6 +117,15 @@ part of 'routes.dart';
name: 'UnshortenerSettingsRoute',
path: 'unshortener',
),
TypedGoRoute<HomeSettingsRoute>(name: 'HomeSettingsRoute', path: 'home'),
TypedGoRoute<HomeModulesSettingsRoute>(
name: 'HomeModulesSettingsRoute',
path: 'home_modules',
),
TypedGoRoute<NewTabModulesSettingsRoute>(
name: 'NewTabModulesSettingsRoute',
path: 'new_tab_modules',
),
TypedGoRoute<ContextualToolbarSettingsRoute>(
name: 'ContextualToolbarSettingsRoute',
path: 'contextual_toolbar',
@@ -359,6 +368,38 @@ class UnshortenerSettingsRoute extends GoRouteData
}
}
class HomeSettingsRoute extends GoRouteData with $HomeSettingsRoute {
const HomeSettingsRoute();
@override
Widget build(BuildContext context, GoRouterState state) {
return const HomeSettingsScreen();
}
}
class HomeModulesSettingsRoute extends GoRouteData
with $HomeModulesSettingsRoute {
const HomeModulesSettingsRoute();
@override
Widget build(BuildContext context, GoRouterState state) {
return const ModuleSurfaceSettingsScreen();
}
}
class NewTabModulesSettingsRoute extends GoRouteData
with $NewTabModulesSettingsRoute {
const NewTabModulesSettingsRoute();
@override
Widget build(BuildContext context, GoRouterState state) {
return const ModuleSurfaceSettingsScreen(
surface: ModuleSurface.newTab,
title: 'Customize New Tab',
);
}
}
class ContextualToolbarSettingsRoute extends GoRouteData
with $ContextualToolbarSettingsRoute {
const ContextualToolbarSettingsRoute();