diff --git a/lib/pages/setting/models/play_settings.dart b/lib/pages/setting/models/play_settings.dart index a7ea7c28d..37d76fade 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.photo_camera_outlined), + setKey: SettingBoxKey.showFsScreenshotBtn, + 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 c7a6d9ac6..d08c84563 100644 --- a/lib/plugin/pl_player/controller.dart +++ b/lib/plugin/pl_player/controller.dart @@ -326,6 +326,7 @@ class PlPlayerController { late final reverseFromFirst = Pref.reverseFromFirst; late final horizontalPreview = Pref.horizontalPreview; late final showDmChart = Pref.showDmChart; + late final showFsScreenshotBtn = Pref.showFsScreenshotBtn; 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 e0d8d1095..45093711d 100644 --- a/lib/plugin/pl_player/view.dart +++ b/lib/plugin/pl_player/view.dart @@ -1611,7 +1611,7 @@ class _PLVideoPlayerState extends State ), // 截图 - if (isFullScreen) + if (isFullScreen && plPlayerController.showFsScreenshotBtn) ViewSafeArea( left: false, child: Obx( @@ -1656,6 +1656,8 @@ class _PLVideoPlayerState extends State shape: const RoundedRectangleBorder(), content: GestureDetector( onTap: () async { + Get.back(); + String name = DateTime.now() .toString(); final SaveResult result = @@ -1668,7 +1670,6 @@ class _PLVideoPlayerState extends State ); if (result.isSuccess) { - Get.back(); SmartDialog.showToast( '$name.png已保存到相册/截图', ); diff --git a/lib/utils/storage_key.dart b/lib/utils/storage_key.dart index f461261ac..924ccc304 100644 --- a/lib/utils/storage_key.dart +++ b/lib/utils/storage_key.dart @@ -131,7 +131,8 @@ class SettingBoxKey { memberTab = 'memberTab', dynamicDetailRatio = 'dynamicDetailRatio', directExitOnBack = 'directExitOnBack', - quickFavId = 'quickFavId'; + quickFavId = 'quickFavId', + showFsScreenshotBtn = 'showFsScreenshotBtn'; static const String subtitlePreferenceV2 = 'subtitlePreferenceV2', enableDragSubtitle = 'enableDragSubtitle', diff --git a/lib/utils/storage_pref.dart b/lib/utils/storage_pref.dart index ba27284e4..c8ae0577b 100644 --- a/lib/utils/storage_pref.dart +++ b/lib/utils/storage_pref.dart @@ -791,4 +791,7 @@ class Pref { } return null; } + + static bool get showFsScreenshotBtn => + _setting.get(SettingBoxKey.showFsScreenshotBtn, defaultValue: true); }