major update
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import 'package:fading_scroll/fading_scroll.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_hooks/flutter_hooks.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:lensai/core/routing/routes.dart';
|
||||
import 'package:lensai/features/bangs/domain/providers/bangs.dart';
|
||||
@@ -19,13 +18,14 @@ class BangCategoriesScreen extends HookConsumerWidget {
|
||||
actions: [
|
||||
IconButton(
|
||||
onPressed: () async {
|
||||
await context.push(const BangSearchRoute().location);
|
||||
await const BangSearchRoute().push(context);
|
||||
},
|
||||
icon: const Icon(Icons.search),
|
||||
),
|
||||
],
|
||||
),
|
||||
body: categoriesAsync.when(
|
||||
skipLoadingOnReload: true,
|
||||
data: (categories) {
|
||||
return FadingScroll(
|
||||
fadingSize: 25,
|
||||
@@ -66,13 +66,10 @@ class BangCategoriesScreen extends HookConsumerWidget {
|
||||
(subCategory) => ListTile(
|
||||
title: Text(subCategory),
|
||||
onTap: () async {
|
||||
await context.push(
|
||||
BangSubCategoryRoute(
|
||||
category: category.key,
|
||||
subCategory:
|
||||
subCategory,
|
||||
).location,
|
||||
);
|
||||
await BangSubCategoryRoute(
|
||||
category: category.key,
|
||||
subCategory: subCategory,
|
||||
).push(context);
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:lensai/core/routing/routes.dart';
|
||||
import 'package:lensai/extensions/nullable.dart';
|
||||
@@ -29,6 +28,7 @@ class BangListScreen extends HookConsumerWidget {
|
||||
slivers: [
|
||||
SliverAppBar.medium(title: Text('$category: $subCategory')),
|
||||
bangsAsync.when(
|
||||
skipLoadingOnReload: true,
|
||||
data: (bangs) {
|
||||
return SliverList.builder(
|
||||
itemCount: bangs.length,
|
||||
@@ -41,7 +41,7 @@ class BangListScreen extends HookConsumerWidget {
|
||||
.read(selectedBangTriggerProvider().notifier)
|
||||
.setTrigger(bang.trigger);
|
||||
|
||||
context.go(const SearchRoute().location);
|
||||
const SearchRoute().go(context);
|
||||
},
|
||||
);
|
||||
},
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:lensai/core/routing/routes.dart';
|
||||
import 'package:lensai/features/bangs/data/models/bang_data.dart';
|
||||
@@ -38,7 +37,7 @@ class BangDetails extends HookConsumerWidget {
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
UrlIcon(bangData.getUrl(''), iconSize: 34.0),
|
||||
UrlIcon([bangData.getTemplateUrl('')], iconSize: 34.0),
|
||||
const SizedBox(width: 12.0),
|
||||
Expanded(
|
||||
child: Column(
|
||||
@@ -67,14 +66,14 @@ class BangDetails extends HookConsumerWidget {
|
||||
visualDensity: VisualDensity.compact,
|
||||
),
|
||||
onPressed: () async {
|
||||
final url = Uri.parse(bangData.getUrl('').origin);
|
||||
final url = Uri.parse(bangData.getTemplateUrl('').origin);
|
||||
|
||||
await ref
|
||||
.read(tabRepositoryProvider.notifier)
|
||||
.addTab(url: url);
|
||||
|
||||
if (context.mounted) {
|
||||
context.go(BrowserRoute().location);
|
||||
BrowserRoute().go(context);
|
||||
}
|
||||
},
|
||||
label: Text(bangData.domain),
|
||||
|
||||
@@ -73,7 +73,8 @@ class SiteSearch extends HookConsumerWidget {
|
||||
width: double.maxFinite,
|
||||
child: SelectableChips(
|
||||
itemId: (bang) => bang.trigger,
|
||||
itemAvatar: (bang) => UrlIcon(bang.getUrl(''), iconSize: 20),
|
||||
itemAvatar:
|
||||
(bang) => UrlIcon([bang.getTemplateUrl('')], iconSize: 20),
|
||||
itemLabel: (bang) => Text(bang.websiteName),
|
||||
availableItems: availableBangs,
|
||||
selectedItem: selectedBang,
|
||||
|
||||
Reference in New Issue
Block a user