✨ Quick choose address
This commit is contained in:
parent
c0662439da
commit
a5e2c567ca
|
@ -85,7 +85,7 @@ Widget reloadSwitchAddressSetting() {
|
|||
await method.reloadSwitchAddress();
|
||||
defaultToast(context, "分流2/3已同步");
|
||||
} catch (e, s) {
|
||||
print("$e\$s");
|
||||
print("$e\n$s");
|
||||
defaultToast(context, "分流同步失败");
|
||||
}
|
||||
} else if (choose == "重制分流为默认值") {
|
||||
|
@ -93,7 +93,7 @@ Widget reloadSwitchAddressSetting() {
|
|||
await method.resetSwitchAddress();
|
||||
defaultToast(context, "分流2/3已重制为默认值");
|
||||
} catch (e, s) {
|
||||
print("$e\$s");
|
||||
print("$e\n$s");
|
||||
defaultToast(context, "分流重制失败");
|
||||
}
|
||||
}
|
||||
|
@ -103,3 +103,53 @@ Widget reloadSwitchAddressSetting() {
|
|||
},
|
||||
);
|
||||
}
|
||||
|
||||
Future chooseAddressAndSwitch(BuildContext context) async {
|
||||
String? choose = await showDialog<String>(
|
||||
context: context,
|
||||
builder: (BuildContext context) {
|
||||
return SimpleDialog(
|
||||
title: const Text('选择分流'),
|
||||
children: <Widget>[
|
||||
..._addresses.entries.map(
|
||||
(e) => SimpleDialogOption(
|
||||
child: Text(e.value),
|
||||
onPressed: () {
|
||||
Navigator.of(context).pop(e.key);
|
||||
},
|
||||
),
|
||||
),
|
||||
SimpleDialogOption(
|
||||
child: const Text("分流同步"),
|
||||
onPressed: () {
|
||||
Navigator.of(context).pop("分流同步");
|
||||
},
|
||||
)
|
||||
],
|
||||
);
|
||||
},
|
||||
);
|
||||
if (choose != null) {
|
||||
if ("分流同步" == choose) {
|
||||
try {
|
||||
await method.reloadSwitchAddress();
|
||||
defaultToast(context, "分流2/3已同步");
|
||||
} catch (e, s) {
|
||||
print("$e\n$s");
|
||||
defaultToast(context, "分流同步失败");
|
||||
}
|
||||
return;
|
||||
}
|
||||
await method.setSwitchAddress(choose);
|
||||
_currentAddress = choose;
|
||||
}
|
||||
}
|
||||
|
||||
Widget addressActionButton(BuildContext context) {
|
||||
return IconButton(
|
||||
onPressed: () {
|
||||
chooseAddressAndSwitch(context);
|
||||
},
|
||||
icon: const Icon(Icons.network_ping),
|
||||
);
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ import 'package:pikapika/screens/RankingsScreen.dart';
|
|||
import 'package:pikapika/screens/SearchScreen.dart';
|
||||
import 'package:pikapika/screens/components/ContentError.dart';
|
||||
import 'package:pikapika/basic/Method.dart';
|
||||
import '../basic/config/Address.dart';
|
||||
import '../basic/config/CategoriesColumnCount.dart';
|
||||
import '../basic/config/IconLoading.dart';
|
||||
import 'ComicsScreen.dart';
|
||||
|
@ -48,6 +49,7 @@ class _CategoriesScreenState extends State<CategoriesScreen> {
|
|||
title: const Text('分类'),
|
||||
actions: [
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
_searchBar.getSearchAction(context),
|
||||
],
|
||||
);
|
||||
|
|
|
@ -7,6 +7,7 @@ import 'package:pikapika/basic/store/Categories.dart';
|
|||
import 'package:pikapika/basic/config/ListLayout.dart';
|
||||
import 'package:pikapika/basic/Method.dart';
|
||||
import '../basic/Entities.dart';
|
||||
import '../basic/config/Address.dart';
|
||||
import '../basic/config/IconLoading.dart';
|
||||
import 'SearchScreen.dart';
|
||||
import 'components/ComicPager.dart';
|
||||
|
@ -55,6 +56,7 @@ class _ComicsScreenState extends State<ComicsScreen> {
|
|||
title: Text(categoryTitle(widget.category)),
|
||||
actions: [
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
_chooseCategoryAction(),
|
||||
_categorySearchBar.getSearchAction(context),
|
||||
],
|
||||
|
@ -145,8 +147,8 @@ class _ComicsScreenState extends State<ComicsScreen> {
|
|||
appBar = AppBar(
|
||||
title: Text(title),
|
||||
actions: [
|
||||
shadowCategoriesActionButton(context),
|
||||
chooseLayoutActionButton(context),
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
_chooseCategoryAction(),
|
||||
],
|
||||
);
|
||||
|
|
|
@ -4,7 +4,9 @@ import 'package:pikapika/basic/Method.dart';
|
|||
import 'package:pikapika/basic/config/ListLayout.dart';
|
||||
import 'package:pikapika/basic/config/ShadowCategories.dart';
|
||||
|
||||
import '../basic/config/Address.dart';
|
||||
import 'components/ComicListBuilder.dart';
|
||||
import 'components/Common.dart';
|
||||
import 'components/RightClickPop.dart';
|
||||
|
||||
// 随机漫画页面
|
||||
|
@ -31,8 +33,8 @@ class _RandomComicsScreenState extends State<RandomComicsScreen> {
|
|||
appBar: AppBar(
|
||||
title: const Text('随机本子'),
|
||||
actions: [
|
||||
shadowCategoriesActionButton(context),
|
||||
chooseLayoutActionButton(context),
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
],
|
||||
),
|
||||
body: ComicListBuilder(method.randomComics),
|
||||
|
|
|
@ -8,8 +8,10 @@ import 'package:pikapika/screens/components/ContentBuilder.dart';
|
|||
|
||||
import '../basic/Cross.dart';
|
||||
import '../basic/Navigator.dart';
|
||||
import '../basic/config/Address.dart';
|
||||
import 'ComicsScreen.dart';
|
||||
import 'components/ComicListBuilder.dart';
|
||||
import 'components/Common.dart';
|
||||
import 'components/FitButton.dart';
|
||||
import 'components/RightClickPop.dart';
|
||||
|
||||
|
@ -32,8 +34,8 @@ class RankingsScreen extends StatelessWidget {
|
|||
appBar: AppBar(
|
||||
title: const Text('排行榜'),
|
||||
actions: [
|
||||
shadowCategoriesActionButton(context),
|
||||
chooseLayoutActionButton(context),
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
],
|
||||
),
|
||||
body: DefaultTabController(
|
||||
|
|
|
@ -6,6 +6,7 @@ import 'package:pikapika/basic/store/Categories.dart';
|
|||
import 'package:pikapika/basic/Method.dart';
|
||||
import 'package:pikapika/screens/components/RightClickPop.dart';
|
||||
import '../basic/Entities.dart';
|
||||
import '../basic/config/Address.dart';
|
||||
import '../basic/config/IconLoading.dart';
|
||||
import 'components/ComicPager.dart';
|
||||
import 'components/Common.dart';
|
||||
|
@ -51,6 +52,7 @@ class _SearchScreenState extends State<SearchScreen> {
|
|||
title: Text("${categoryTitle(widget.category)} ${widget.keyword}"),
|
||||
actions: [
|
||||
aPopMenu(context),
|
||||
addressActionButton(context),
|
||||
_chooseCategoryAction(),
|
||||
_searchBar.getSearchAction(context),
|
||||
],
|
||||
|
|
Loading…
Reference in New Issue