Fix general issues

This commit is contained in:
problematicconsumer
2023-09-06 21:03:43 +03:30
parent 42ea79c7e5
commit b03d8cba99
10 changed files with 40 additions and 42 deletions

View File

@@ -17,7 +17,6 @@ import 'package:hiddify/utils/utils.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:loggy/loggy.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:stack_trace/stack_trace.dart' as stack_trace;
import 'package:window_manager/window_manager.dart';
final _loggy = Loggy('bootstrap');
@@ -26,13 +25,6 @@ final _stopWatch = Stopwatch();
Future<void> lazyBootstrap(WidgetsBinding widgetsBinding) async {
_stopWatch.start();
// temporary solution: https://github.com/rrousselGit/riverpod/issues/1874
FlutterError.demangleStackTrace = (StackTrace stack) {
if (stack is stack_trace.Trace) return stack.vmTrace;
if (stack is stack_trace.Chain) return stack.toTrace().vmTrace;
return stack;
};
FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
if (PlatformUtils.isDesktop) await windowManager.ensureInitialized();

View File

@@ -1,5 +1,4 @@
import 'package:flutter/material.dart';
import 'package:flutter_animate/flutter_animate.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:hiddify/core/core_providers.dart';
import 'package:hiddify/core/prefs/prefs.dart';
@@ -29,6 +28,6 @@ class AppView extends HookConsumerWidget with PresLogger {
theme: theme.light(),
darkTheme: theme.dark(),
title: 'Hiddify Next',
).animate().fadeIn();
);
}
}

View File

@@ -7,7 +7,7 @@ part 'core_providers.g.dart';
TranslationsEn translations(TranslationsRef ref) =>
ref.watch(localeProvider).translations();
@riverpod
@Riverpod(keepAlive: true)
AppTheme theme(ThemeRef ref) => AppTheme(
ref.watch(themeModeProvider),
ref.watch(trueBlackThemeProvider),

View File

@@ -10,7 +10,7 @@ part 'profiles_dao.g.dart';
Map<SortMode, OrderingMode> orderMap = {
SortMode.ascending: OrderingMode.asc,
SortMode.descending: OrderingMode.desc
SortMode.descending: OrderingMode.desc,
};
@DriftAccessor(tables: [ProfileEntries])

View File

@@ -2,7 +2,8 @@ import 'dart:io';
import 'package:drift/drift.dart';
import 'package:drift/native.dart';
import 'package:hiddify/data/local/dao/dao.dart';
// import 'package:hiddify/data/local/dao/dao.dart';
import 'package:hiddify/data/local/dao/profiles_dao.dart'; // TODO https://github.com/simolus3/drift/issues/2589
import 'package:hiddify/data/local/tables.dart';
import 'package:hiddify/data/local/type_converters.dart';
import 'package:hiddify/services/files_editor_service.dart';

View File

@@ -129,7 +129,7 @@ class SubscriptionInfo with _$SubscriptionInfo {
final values = header.split(';');
final map = {
for (final v in values)
v.split('=').first: int.tryParse(v.split('=').second)
v.split('=').first: int.tryParse(v.split('=').second),
};
return SubscriptionInfo.fromJson(map);
}

View File

@@ -23,7 +23,7 @@ class EmptyProfilesHomeBody extends HookConsumerWidget {
onPressed: () => const AddProfileRoute().push(context),
icon: const Icon(Icons.add),
label: Text(t.profile.add.buttonText.titleCase),
)
),
],
),
);
@@ -47,7 +47,7 @@ class EmptyActiveProfileHomeBody extends HookConsumerWidget {
OutlinedButton(
onPressed: () => const ProfilesRoute().push(context),
child: Text(t.profile.overviewPageTitle.titleCase),
)
),
],
),
);

View File

@@ -95,6 +95,8 @@ mixin _Prefs<T> implements LoggerMixin {
/// Updates the value asynchronously.
Future<void> update(T value) async {
loggy.debug("updating preference [$key] to [$value]");
try {
if (mapTo != null && mapFrom != null) {
await prefs.setString(key, mapTo!(value));
} else {
@@ -111,10 +113,14 @@ mixin _Prefs<T> implements LoggerMixin {
await prefs.setStringList(key, value);
}
}
} catch (e) {
loggy.warning("error updating preference[$key]: $e");
}
}
T getValue() {
try {
loggy.debug("getting persisted preference [$key]");
if (mapTo != null && mapFrom != null) {
final persisted = prefs.getString(key);
return persisted != null ? mapFrom!(persisted) : defaultValue;

View File

@@ -593,10 +593,10 @@ packages:
dependency: "direct main"
description:
name: hooks_riverpod
sha256: ad7b877c3687e38764633d221a1f65491bc7a540e724101e9a404a84db2a4276
sha256: "04a8a526db4c04139f6e5d318ef5079832daa1327a485ad391faf1b6bb203960"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
version: "2.3.10"
hotreloader:
dependency: transitive
description:
@@ -993,26 +993,26 @@ packages:
dependency: "direct main"
description:
name: riverpod_annotation
sha256: "6294fe7e7d1875f32bdf04c8fce7620e718070273703097847df8f3bf16995ea"
sha256: fefc51f8888839a597abe3c813c764404c85c0100a0676d242f358cc92bf5e23
url: "https://pub.dev"
source: hosted
version: "2.1.5"
version: "2.1.4"
riverpod_generator:
dependency: "direct dev"
description:
name: riverpod_generator
sha256: d132b1ccb476e60f99989caa6ba9b1c4d88409806c93d880d1633c60c382454d
sha256: "3cbeb22926bb70c9c250fd0ed061b3086729404b0e4e89e209f46ef5393ccba4"
url: "https://pub.dev"
source: hosted
version: "2.3.2"
version: "2.3.1"
riverpod_lint:
dependency: "direct dev"
description:
name: riverpod_lint
sha256: "74123a5f0a8e809ab80078dbc02061ecf02e09647a2c3231c87b7342bcf8d399"
sha256: a26fbbd4b948c1a009264418bd6f9b153be75317ac61a2c37ed3920af2e135e4
url: "https://pub.dev"
source: hosted
version: "2.0.4"
version: "2.0.3"
rxdart:
dependency: "direct main"
description:

View File

@@ -27,9 +27,9 @@ dependencies:
json_annotation: ^4.8.1
# state management
hooks_riverpod: ^2.4.0
hooks_riverpod: 2.3.10
flutter_hooks: ^0.20.1
riverpod_annotation: ^2.1.5
riverpod_annotation: 2.1.4
rxdart: ^0.27.7
# persistence
@@ -84,14 +84,14 @@ dev_dependencies:
build_runner: ^2.4.6
json_serializable: ^6.7.1
freezed: ^2.4.2
riverpod_generator: ^2.3.2
riverpod_generator: 2.3.1
drift_dev: ^2.11.1
ffigen: ^8.0.2
slang_build_runner: ^3.23.0
flutter_gen_runner: ^5.3.1
go_router_builder: ^2.3.1
custom_lint: ^0.5.3
riverpod_lint: ^2.0.4
riverpod_lint: 2.0.3
icons_launcher: ^2.1.3
dependency_overrides: