#21 font setting only take effect to SSH

This commit is contained in:
lollipopkit
2023-04-04 17:35:37 +08:00
parent de0eedb2cb
commit 0ac6984576
3 changed files with 26 additions and 14 deletions

View File

@@ -1,6 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:toolbox/core/utils/misc.dart';
import '/core/extension/colorx.dart';
import 'core/utils/ui.dart';
@@ -18,7 +17,6 @@ class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
setTransparentNavigationBar(context);
final fontName = getFileName(_setting.fontPath.fetch());
primaryColor = Color(_setting.primaryColor.fetch()!);
final textStyle = TextStyle(color: primaryColor);
@@ -51,7 +49,6 @@ class MyApp extends StatelessWidget {
final theme = ThemeData(
useMaterial3: false,
fontFamily: fontName,
primaryColor: primaryColor,
primarySwatch: primarySwatch,
appBarTheme: appBarTheme,
@@ -64,7 +61,6 @@ class MyApp extends StatelessWidget {
);
final darkTheme = ThemeData(
useMaterial3: false,
fontFamily: fontName,
primaryColor: primaryColor,
primarySwatch: primarySwatch,
floatingActionButtonTheme: fabTheme,

View File

@@ -2,9 +2,9 @@
class BuildData {
static const String name = "ServerBox";
static const int build = 250;
static const int build = 252;
static const String engine =
"Flutter 3.7.7 • channel stable • https://github.com/flutter/flutter.git\nFramework • revision 2ad6cd72c0 (3 weeks ago) • 2023-03-08 09:41:59 -0800\nEngine • revision 1837b5be5f\nTools • Dart 2.19.4 • DevTools 2.20.1\n";
static const String buildAt = "2023-03-28 17:16:16.365127";
static const int modifications = 2;
static const String buildAt = "2023-03-28 17:42:34.827687";
static const int modifications = 3;
}

View File

@@ -79,6 +79,9 @@ class _SettingPageState extends State<SettingPage> {
// Server
_buildTitle(_s.server),
_buildServer(),
// SSH
_buildTitle('SSH'),
_buildSSH(),
const SizedBox(height: 37),
],
),
@@ -102,7 +105,6 @@ class _SettingPageState extends State<SettingPage> {
_buildThemeMode(),
_buildAppColorPreview(),
_buildLaunchPage(),
_buildFont(),
_buildCheckUpdate(),
];
if (isIOS) {
@@ -121,12 +123,20 @@ class _SettingPageState extends State<SettingPage> {
children: [
_buildDistLogoSwitch(),
_buildUpdateInterval(),
_buildTermTheme(),
_buildMaxRetry(),
].map((e) => RoundRectCard(e)).toList(),
);
}
Widget _buildSSH() {
return Column(
children: [
_buildTermTheme(),
_buildFont(),
].map((e) => RoundRectCard(e)).toList(),
);
}
Widget _buildDistLogoSwitch() {
return ListTile(
title: Text(
@@ -482,11 +492,17 @@ class _SettingPageState extends State<SettingPage> {
Future<void> _pickFontFile() async {
final path = await pickOneFile();
if (path != null) {
final fontDir_ = await fontDir;
final fontFile = File(path);
final newPath = '${fontDir_.path}/${path.split('/').last}';
await fontFile.copy(newPath);
_setting.fontPath.put(newPath);
// iOS can't copy file to app dir, so we need to use the original path
if (isIOS) {
_setting.fontPath.put(path);
} else {
final fontDir_ = await fontDir;
final fontFile = File(path);
final newPath = '${fontDir_.path}/${path.split('/').last}';
await fontFile.copy(newPath);
_setting.fontPath.put(newPath);
}
setState(() {});
_showRestartSnackbar();
return;