some async refactorings
This commit is contained in:
@@ -46,7 +46,7 @@ class AppInitializationService extends _$AppInitializationService {
|
||||
.syncBangGroups(syncInterval: const Duration(days: 7));
|
||||
}
|
||||
|
||||
Future<Map<HostSource, Result<void>>> _initHosts(Settings settings) async {
|
||||
FutureOr<Map<HostSource, Result<void>>> _initHosts(Settings settings) {
|
||||
if (settings.enableContentBlocking) {
|
||||
state = Result.success(
|
||||
(
|
||||
|
||||
@@ -305,7 +305,7 @@ class KagiScreen extends HookConsumerWidget {
|
||||
lastBackButtonPress.value = null;
|
||||
|
||||
if (activeWebView?.key != null && webViews.length > 1) {
|
||||
await ref
|
||||
ref
|
||||
.read(webViewRepositoryProvider.notifier)
|
||||
.closeTab(activeWebView!.key!);
|
||||
return true;
|
||||
|
||||
@@ -29,10 +29,8 @@ class ViewTabsSheet extends HookConsumerWidget {
|
||||
label: const Text('New Tab'),
|
||||
),
|
||||
TextButton.icon(
|
||||
onPressed: () async {
|
||||
await ref
|
||||
.read(webViewRepositoryProvider.notifier)
|
||||
.closeAllTabs();
|
||||
onPressed: () {
|
||||
ref.read(webViewRepositoryProvider.notifier).closeAllTabs();
|
||||
},
|
||||
icon: const Icon(Icons.delete),
|
||||
label: const Text('Close All'),
|
||||
|
||||
@@ -11,7 +11,7 @@ class SaveSettingsController extends _$SaveSettingsController {
|
||||
Future<void> save(UpdateSettingsFunc updateSettings) async {
|
||||
state = const AsyncLoading();
|
||||
state = await AsyncValue.guard(
|
||||
() async => ref
|
||||
() => ref
|
||||
.read(settingsRepositoryProvider.notifier)
|
||||
.updateSettings(updateSettings),
|
||||
);
|
||||
|
||||
@@ -53,7 +53,7 @@ Raw<Stream<ReceivedParameter>> sharingIntentStream(SharingIntentStreamRef ref) {
|
||||
// ignore: discarded_futures
|
||||
.getInitialSharing()
|
||||
// ignore: discarded_futures
|
||||
.then((event) async {
|
||||
.then((event) {
|
||||
FlutterSharingIntent.instance.reset();
|
||||
return event;
|
||||
}).asStream();
|
||||
|
||||
@@ -35,11 +35,11 @@ class WebViewRepository extends _$WebViewRepository {
|
||||
state = {...state, webView.page.value.key: webView};
|
||||
}
|
||||
|
||||
Future<void> closeTab(Key key) async {
|
||||
void closeTab(Key key) {
|
||||
state = Map.of(state)..remove(key);
|
||||
}
|
||||
|
||||
Future<void> closeAllTabs() async {
|
||||
void closeAllTabs() {
|
||||
state = {};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,8 +60,8 @@ class WebViewTab extends HookConsumerWidget {
|
||||
IconButton(
|
||||
visualDensity:
|
||||
const VisualDensity(horizontal: -4.0, vertical: -4.0),
|
||||
onPressed: () async {
|
||||
await ref
|
||||
onPressed: () {
|
||||
ref
|
||||
.read(webViewRepositoryProvider.notifier)
|
||||
.closeTab(page.key);
|
||||
},
|
||||
|
||||
@@ -5,7 +5,7 @@ import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||
part 'website_title.g.dart';
|
||||
|
||||
@Riverpod(keepAlive: true)
|
||||
Future<WebPageInfo> pageInfo(PageInfoRef ref, Uri url) async {
|
||||
Future<WebPageInfo> pageInfo(PageInfoRef ref, Uri url) {
|
||||
final websiteService = ref.watch(genericWebsiteServiceProvider.notifier);
|
||||
return websiteService.getInfo(url).then((value) => value.value);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user