use ValueGetter

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-12-14 14:14:27 +08:00
parent bc5ce11449
commit 1cd949c365
8 changed files with 11 additions and 13 deletions

View File

@@ -399,7 +399,7 @@ class _MarqueeSimulation extends Simulation {
class ContextSingleTicker implements TickerProvider { class ContextSingleTicker implements TickerProvider {
Ticker? _ticker; Ticker? _ticker;
BuildContext context; BuildContext context;
final bool Function()? autoStart; final ValueGetter<bool>? autoStart;
ContextSingleTicker(this.context, {this.autoStart}); ContextSingleTicker(this.context, {this.autoStart});

View File

@@ -323,7 +323,7 @@ Future<void> showImportExportDialog<T>(
BuildContext context, { BuildContext context, {
required String title, required String title,
String? label, String? label,
required String Function() toJson, required ValueGetter<String> toJson,
required FutureOr<bool> Function(T json) fromJson, required FutureOr<bool> Function(T json) fromJson,
}) => showDialog( }) => showDialog(
context: context, context: context,

View File

@@ -30,8 +30,8 @@ sealed class SettingsModel {
class NormalModel extends SettingsModel { class NormalModel extends SettingsModel {
@override @override
final String? title; final String? title;
final StringGetter? getTitle; final ValueGetter<String>? getTitle;
final StringGetter? getSubtitle; final ValueGetter<String>? getSubtitle;
final Widget Function()? getTrailing; final Widget Function()? getTrailing;
final void Function(BuildContext context, void Function() setState)? onTap; final void Function(BuildContext context, void Function() setState)? onTap;

View File

@@ -1,13 +1,11 @@
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart'; import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
import 'package:flutter/material.dart' hide ListTile; import 'package:flutter/material.dart' hide ListTile;
typedef StringGetter = String Function();
class NormalItem extends StatefulWidget { class NormalItem extends StatefulWidget {
final String? title; final String? title;
final StringGetter? getTitle; final ValueGetter<String>? getTitle;
final String? subtitle; final String? subtitle;
final StringGetter? getSubtitle; final ValueGetter<String>? getSubtitle;
final Widget? leading; final Widget? leading;
final Widget Function()? getTrailing; final Widget Function()? getTrailing;
final void Function(BuildContext context, void Function() setState)? onTap; final void Function(BuildContext context, void Function() setState)? onTap;

View File

@@ -5,7 +5,7 @@ typedef PopupMenuItemSelected<T> = bool Function(T value);
class PopupMenuText<T> extends StatelessWidget { class PopupMenuText<T> extends StatelessWidget {
final String title; final String title;
final T Function() value; final ValueGetter<T> value;
final PopupMenuItemSelected<T> onSelected; final PopupMenuItemSelected<T> onSelected;
final PopupMenuItemBuilder<T> itemBuilder; final PopupMenuItemBuilder<T> itemBuilder;
final String Function(T) getSelectTitle; final String Function(T) getSelectTitle;

View File

@@ -28,8 +28,8 @@ class PlayerFocus extends StatelessWidget {
final PlPlayerController plPlayerController; final PlPlayerController plPlayerController;
final CommonIntroController? introController; final CommonIntroController? introController;
final VoidCallback onSendDanmaku; final VoidCallback onSendDanmaku;
final bool Function()? canPlay; final ValueGetter<bool>? canPlay;
final bool Function()? onSkipSegment; final ValueGetter<bool>? onSkipSegment;
static bool _shouldHandle(LogicalKeyboardKey logicalKey) { static bool _shouldHandle(LogicalKeyboardKey logicalKey) {
return logicalKey == LogicalKeyboardKey.tab || return logicalKey == LogicalKeyboardKey.tab ||

View File

@@ -33,7 +33,7 @@ class DownloadService extends GetxService {
final _lock = Lock(); final _lock = Lock();
final flagNotifier = <void Function()>{}; final flagNotifier = <VoidCallback>{};
final waitDownloadQueue = RxList<BiliDownloadEntryInfo>(); final waitDownloadQueue = RxList<BiliDownloadEntryInfo>();
final downloadList = <BiliDownloadEntryInfo>[]; final downloadList = <BiliDownloadEntryInfo>[];

View File

@@ -649,7 +649,7 @@ abstract class PageUtils {
static void showVideoBottomSheet( static void showVideoBottomSheet(
BuildContext context, { BuildContext context, {
required Widget child, required Widget child,
required bool Function() isFullScreen, required ValueGetter<bool> isFullScreen,
double? padding, double? padding,
}) { }) {
if (!context.mounted) { if (!context.mounted) {