From 659cff875f84693f7fa02c36565cd861ddaf3368 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Thu, 28 Aug 2025 16:04:14 +0800 Subject: [PATCH] custom show fs lock btn Closes #1150 Signed-off-by: bggRGjQaUbCoE --- lib/pages/setting/models/play_settings.dart | 7 +++++++ lib/plugin/pl_player/controller.dart | 1 + lib/plugin/pl_player/view.dart | 2 +- lib/utils/storage_key.dart | 1 + lib/utils/storage_pref.dart | 3 +++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/lib/pages/setting/models/play_settings.dart b/lib/pages/setting/models/play_settings.dart index 37d76fade..103a7b826 100644 --- a/lib/pages/setting/models/play_settings.dart +++ b/lib/pages/setting/models/play_settings.dart @@ -42,6 +42,13 @@ List get playSettings => [ setKey: SettingBoxKey.autoPlayEnable, defaultVal: false, ), + const SettingsModel( + settingsType: SettingsType.sw1tch, + title: '全屏显示锁定按钮', + leading: Icon(Icons.lock_outline), + setKey: SettingBoxKey.showFsLockBtn, + defaultVal: true, + ), const SettingsModel( settingsType: SettingsType.sw1tch, title: '全屏显示截图按钮', diff --git a/lib/plugin/pl_player/controller.dart b/lib/plugin/pl_player/controller.dart index d08c84563..5f19d0e08 100644 --- a/lib/plugin/pl_player/controller.dart +++ b/lib/plugin/pl_player/controller.dart @@ -327,6 +327,7 @@ class PlPlayerController { late final horizontalPreview = Pref.horizontalPreview; late final showDmChart = Pref.showDmChart; late final showFsScreenshotBtn = Pref.showFsScreenshotBtn; + late final showFsLockBtn = Pref.showFsLockBtn; late final bool autoExitFullscreen = Pref.autoExitFullscreen; late final bool autoPlayEnable = Pref.autoPlayEnable; diff --git a/lib/plugin/pl_player/view.dart b/lib/plugin/pl_player/view.dart index db1146463..3b3ca6327 100644 --- a/lib/plugin/pl_player/view.dart +++ b/lib/plugin/pl_player/view.dart @@ -1571,7 +1571,7 @@ class _PLVideoPlayerState extends State ), // 锁 - if (!isLive && isFullScreen) + if (!isLive && isFullScreen && plPlayerController.showFsScreenshotBtn) ViewSafeArea( right: false, child: Align( diff --git a/lib/utils/storage_key.dart b/lib/utils/storage_key.dart index f4468d48d..c222ab2df 100644 --- a/lib/utils/storage_key.dart +++ b/lib/utils/storage_key.dart @@ -133,6 +133,7 @@ class SettingBoxKey { directExitOnBack = 'directExitOnBack', quickFavId = 'quickFavId', showFsScreenshotBtn = 'showFsScreenshotBtn', + showFsLockBtn = 'showFsLockBtn', silentDownImg = 'silentDownImg'; static const String subtitlePreferenceV2 = 'subtitlePreferenceV2', diff --git a/lib/utils/storage_pref.dart b/lib/utils/storage_pref.dart index 4b5ee9d04..c77080552 100644 --- a/lib/utils/storage_pref.dart +++ b/lib/utils/storage_pref.dart @@ -793,6 +793,9 @@ class Pref { static bool get showFsScreenshotBtn => _setting.get(SettingBoxKey.showFsScreenshotBtn, defaultValue: true); + static bool get showFsLockBtn => + _setting.get(SettingBoxKey.showFsLockBtn, defaultValue: true); + static bool get silentDownImg => _setting.get(SettingBoxKey.silentDownImg, defaultValue: false);