mirror of
https://github.com/revanced/revanced-manager.git
synced 2025-06-12 12:47:37 +02:00
feat: Patches Selector Screen.
This commit is contained in:
@ -1,6 +1,8 @@
|
||||
import 'package:revanced_manager/services/patcher_api.dart';
|
||||
import 'package:revanced_manager/ui/views/app_selector/app_selector_view.dart';
|
||||
import 'package:revanced_manager/ui/views/home/home_view.dart';
|
||||
import 'package:revanced_manager/ui/views/patcher/patcher_view.dart';
|
||||
import 'package:revanced_manager/ui/views/patches_selector/patches_selector_view.dart';
|
||||
import 'package:stacked/stacked_annotations.dart';
|
||||
import 'package:stacked_services/stacked_services.dart';
|
||||
|
||||
@ -8,7 +10,9 @@ import 'package:stacked_services/stacked_services.dart';
|
||||
MaterialRoute(page: HomeView),
|
||||
MaterialRoute(page: AppSelectorView),
|
||||
MaterialRoute(page: PatcherView),
|
||||
MaterialRoute(page: PatchesSelectorView),
|
||||
], dependencies: [
|
||||
LazySingleton(classType: NavigationService),
|
||||
LazySingleton(classType: PatcherService),
|
||||
])
|
||||
class AppSetup {}
|
||||
|
@ -6,11 +6,11 @@
|
||||
|
||||
// ignore_for_file: public_member_api_docs
|
||||
|
||||
// ignore: depend_on_referenced_packages
|
||||
import 'package:stacked_core/stacked_core.dart';
|
||||
// ignore: implementation_imports
|
||||
import 'package:stacked_services/src/navigation/navigation_service.dart';
|
||||
|
||||
import '../services/patcher_api.dart';
|
||||
|
||||
final locator = StackedLocator.instance;
|
||||
|
||||
Future<void> setupLocator(
|
||||
@ -21,4 +21,5 @@ Future<void> setupLocator(
|
||||
|
||||
// Register dependencies
|
||||
locator.registerLazySingleton(() => NavigationService());
|
||||
locator.registerLazySingleton(() => PatcherService());
|
||||
}
|
||||
|
@ -7,11 +7,12 @@
|
||||
// ignore_for_file: no_leading_underscores_for_library_prefixes
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:stacked/stacked.dart' as _i1;
|
||||
import 'package:stacked_services/stacked_services.dart' as _i5;
|
||||
import 'package:stacked_services/stacked_services.dart' as _i6;
|
||||
|
||||
import '../ui/views/app_selector/app_selector_view.dart' as _i3;
|
||||
import '../ui/views/home/home_view.dart' as _i2;
|
||||
import '../ui/views/patcher/patcher_view.dart' as _i4;
|
||||
import '../ui/views/patches_selector/patches_selector_view.dart' as _i5;
|
||||
|
||||
class Routes {
|
||||
static const homeView = '/home-view';
|
||||
@ -20,14 +21,22 @@ class Routes {
|
||||
|
||||
static const patcherView = '/patcher-view';
|
||||
|
||||
static const all = <String>{homeView, appSelectorView, patcherView};
|
||||
static const patchesSelectorView = '/patches-selector-view';
|
||||
|
||||
static const all = <String>{
|
||||
homeView,
|
||||
appSelectorView,
|
||||
patcherView,
|
||||
patchesSelectorView
|
||||
};
|
||||
}
|
||||
|
||||
class StackedRouter extends _i1.RouterBase {
|
||||
final _routes = <_i1.RouteDef>[
|
||||
_i1.RouteDef(Routes.homeView, page: _i2.HomeView),
|
||||
_i1.RouteDef(Routes.appSelectorView, page: _i3.AppSelectorView),
|
||||
_i1.RouteDef(Routes.patcherView, page: _i4.PatcherView)
|
||||
_i1.RouteDef(Routes.patcherView, page: _i4.PatcherView),
|
||||
_i1.RouteDef(Routes.patchesSelectorView, page: _i5.PatchesSelectorView)
|
||||
];
|
||||
|
||||
final _pagesMap = <Type, _i1.StackedRouteFactory>{
|
||||
@ -48,6 +57,12 @@ class StackedRouter extends _i1.RouterBase {
|
||||
builder: (context) => const _i4.PatcherView(),
|
||||
settings: data,
|
||||
);
|
||||
},
|
||||
_i5.PatchesSelectorView: (data) {
|
||||
return MaterialPageRoute<dynamic>(
|
||||
builder: (context) => const _i5.PatchesSelectorView(),
|
||||
settings: data,
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
@ -57,7 +72,7 @@ class StackedRouter extends _i1.RouterBase {
|
||||
Map<Type, _i1.StackedRouteFactory> get pagesMap => _pagesMap;
|
||||
}
|
||||
|
||||
extension NavigatorStateExtension on _i5.NavigationService {
|
||||
extension NavigatorStateExtension on _i6.NavigationService {
|
||||
Future<dynamic> navigateToHomeView(
|
||||
[int? routerId,
|
||||
bool preventDuplicates = true,
|
||||
@ -99,4 +114,18 @@ extension NavigatorStateExtension on _i5.NavigationService {
|
||||
parameters: parameters,
|
||||
transition: transition);
|
||||
}
|
||||
|
||||
Future<dynamic> navigateToPatchesSelectorView(
|
||||
[int? routerId,
|
||||
bool preventDuplicates = true,
|
||||
Map<String, String>? parameters,
|
||||
Widget Function(
|
||||
BuildContext, Animation<double>, Animation<double>, Widget)?
|
||||
transition]) async {
|
||||
navigateTo(Routes.patchesSelectorView,
|
||||
id: routerId,
|
||||
preventDuplicates: preventDuplicates,
|
||||
parameters: parameters,
|
||||
transition: transition);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user