Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-01-29 11:16:07 +08:00
parent 9567910611
commit 1640732f5d
3 changed files with 74 additions and 80 deletions

View File

@@ -18,14 +18,12 @@ import 'package:PiliPlus/models/common/theme/theme_type.dart';
import 'package:PiliPlus/pages/main/controller.dart'; import 'package:PiliPlus/pages/main/controller.dart';
import 'package:PiliPlus/pages/mine/controller.dart'; import 'package:PiliPlus/pages/mine/controller.dart';
import 'package:PiliPlus/pages/setting/models/model.dart'; import 'package:PiliPlus/pages/setting/models/model.dart';
import 'package:PiliPlus/pages/setting/pages/color_select.dart';
import 'package:PiliPlus/pages/setting/slide_color_picker.dart'; import 'package:PiliPlus/pages/setting/slide_color_picker.dart';
import 'package:PiliPlus/pages/setting/widgets/dual_slide_dialog.dart'; import 'package:PiliPlus/pages/setting/widgets/dual_slide_dialog.dart';
import 'package:PiliPlus/pages/setting/widgets/multi_select_dialog.dart'; import 'package:PiliPlus/pages/setting/widgets/multi_select_dialog.dart';
import 'package:PiliPlus/pages/setting/widgets/select_dialog.dart'; import 'package:PiliPlus/pages/setting/widgets/select_dialog.dart';
import 'package:PiliPlus/pages/setting/widgets/slide_dialog.dart'; import 'package:PiliPlus/pages/setting/widgets/slide_dialog.dart';
import 'package:PiliPlus/plugin/pl_player/utils/fullscreen.dart'; import 'package:PiliPlus/plugin/pl_player/utils/fullscreen.dart';
import 'package:PiliPlus/utils/extension/get_ext.dart';
import 'package:PiliPlus/utils/extension/num_ext.dart'; import 'package:PiliPlus/utils/extension/num_ext.dart';
import 'package:PiliPlus/utils/extension/theme_ext.dart'; import 'package:PiliPlus/utils/extension/theme_ext.dart';
import 'package:PiliPlus/utils/global_data.dart'; import 'package:PiliPlus/utils/global_data.dart';
@@ -562,7 +560,6 @@ List<SettingsModel> get styleSettings => [
Get.find<MineController>().themeType.value = result; Get.find<MineController>().themeType.value = result;
} catch (_) {} } catch (_) {}
GStorage.setting.put(SettingBoxKey.themeMode, result.index); GStorage.setting.put(SettingBoxKey.themeMode, result.index);
Get.putOrFind(ColorSelectController.new).themeType.value = result;
Get.changeThemeMode(result.toThemeMode); Get.changeThemeMode(result.toThemeMode);
setState(); setState();
} }
@@ -692,20 +689,17 @@ List<SettingsModel> get styleSettings => [
), ),
NormalModel( NormalModel(
onTap: (context, setState) async { onTap: (context, setState) async {
final result = await Get.toNamed('/fontSizeSetting'); final res = await Get.toNamed('/fontSizeSetting');
if (result != null) { if (res != null) {
Get.putOrFind(ColorSelectController.new).currentTextScale.value = setState();
result;
} }
}, },
title: '字体大小', title: '字体大小',
leading: const Icon(Icons.format_size_outlined), leading: const Icon(Icons.format_size_outlined),
getSubtitle: () => getSubtitle: () {
Get.putOrFind(ColorSelectController.new).currentTextScale.value == 1.0 final scale = Pref.defaultTextScale;
? '默认' return scale == 1.0 ? '默认' : scale.toString();
: Get.putOrFind( },
ColorSelectController.new,
).currentTextScale.value.toString(),
), ),
NormalModel( NormalModel(
onTap: (context, setState) => Get.toNamed( onTap: (context, setState) => Get.toNamed(

View File

@@ -38,7 +38,7 @@ class Item {
} }
class _ColorSelectPageState extends State<ColorSelectPage> { class _ColorSelectPageState extends State<ColorSelectPage> {
final ctr = Get.put(ColorSelectController()); final ctr = Get.put(_ColorSelectController());
FlexSchemeVariant _dynamicSchemeVariant = Pref.schemeVariant; FlexSchemeVariant _dynamicSchemeVariant = Pref.schemeVariant;
@override @override
@@ -270,10 +270,9 @@ class _ColorSelectPageState extends State<ColorSelectPage> {
} }
} }
class ColorSelectController extends GetxController { class _ColorSelectController extends GetxController {
final RxBool dynamicColor = Pref.dynamicColor.obs; final RxBool dynamicColor = Pref.dynamicColor.obs;
final RxInt currentColor = Pref.customColor.obs; final RxInt currentColor = Pref.customColor.obs;
final RxDouble currentTextScale = Pref.defaultTextScale.obs;
final Rx<ThemeType> themeType = Pref.themeType.obs; final Rx<ThemeType> themeType = Pref.themeType.obs;
Box get setting => GStorage.setting; Box get setting => GStorage.setting;

View File

@@ -1500,16 +1500,16 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
}).toList(), }).toList(),
); );
return Container( return DecoratedBox(
height: 45,
decoration: BoxDecoration( decoration: BoxDecoration(
border: Border( border: Border(
bottom: BorderSide( bottom: BorderSide(
width: 1,
color: themeData.dividerColor.withValues(alpha: 0.1), color: themeData.dividerColor.withValues(alpha: 0.1),
), ),
), ),
), ),
child: SizedBox(
height: 45,
child: Row( child: Row(
children: [ children: [
if (tabs.isEmpty) if (tabs.isEmpty)
@@ -1579,6 +1579,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
), ),
], ],
), ),
),
); );
} }