#15 support: select font

This commit is contained in:
lollipopkit
2023-03-21 13:15:36 +08:00
parent 89050daf4e
commit 27e7653587
16 changed files with 101 additions and 42 deletions

View File

@@ -47,10 +47,7 @@ class _DockerManagePageState extends State<DockerManagePage> {
@override
void initState() {
super.initState();
final client = locator<ServerProvider>()
.servers
.firstWhere((element) => element.spi == widget.spi)
.client;
final client = locator<ServerProvider>().getServer(widget.spi.id).client;
if (client == null) {
showSnackBar(context, Text(_s.noClient));
Navigator.of(context).pop();

View File

@@ -48,9 +48,7 @@ class _PkgManagePageState extends State<PkgManagePage>
@override
void initState() {
super.initState();
final si = locator<ServerProvider>()
.servers
.firstWhere((e) => e.spi == widget.spi);
final si = locator<ServerProvider>().getServer(widget.spi.id);
if (si.client == null) {
showSnackBar(context, Text(_s.waitConnection));
Navigator.of(context).pop();
@@ -179,8 +177,9 @@ class _PkgManagePageState extends State<PkgManagePage>
}
return ListView(
padding: const EdgeInsets.all(13),
children:
[_buildUpdatePanel(apt)].map((e) => RoundRectCard(e)).toList(),
children: [
_buildUpdatePanel(apt),
].map((e) => RoundRectCard(e)).toList(),
);
}),
);

View File

@@ -41,9 +41,7 @@ class _ServerDetailPageState extends State<ServerDetailPage>
Widget build(BuildContext context) {
return Consumer<ServerProvider>(builder: (_, provider, __) {
return _buildMainPage(
provider.servers.firstWhere(
(e) => e.spi.id == widget.id,
),
provider.getServer(widget.id),
);
});
}

View File

@@ -99,6 +99,7 @@ class _SettingPageState extends State<SettingPage> {
_buildAppColorPreview(),
_buildLaunchPage(),
_buildCheckUpdate(),
_buildFont(),
];
if (isIOS) {
children.add(_buildPushToken());
@@ -445,4 +446,20 @@ class _SettingPageState extends State<SettingPage> {
),
);
}
Widget _buildFont() {
return ListTile(
title: Text(_s.chooseFontFile),
subtitle: Text(getFileName(_setting.fontPath.fetch()) ?? _s.notSelected),
trailing: TextButton(
onPressed: () async {
final path = await pickOneFile();
if (path != null) {
_setting.fontPath.put(path);
setState(() {});
}
},
child: Text(_s.pickFile)),
);
}
}

View File

@@ -51,7 +51,7 @@ class _SFTPPageState extends State<SFTPPage> {
void initState() {
super.initState();
final serverProvider = locator<ServerProvider>();
_si = serverProvider.servers.firstWhere((s) => s.spi == widget.spi);
_si = serverProvider.getServer(widget.spi.id);
_client = _si?.client;
}