mod: 避免triggerFullscreenCallback重复调用

This commit is contained in:
orz12
2024-02-22 20:01:24 +08:00
parent a88409e389
commit 9f7d800af0

View File

@@ -391,7 +391,7 @@ class PlPlayerController {
setting.get(SettingBoxKey.enableAutoEnter, defaultValue: false); setting.get(SettingBoxKey.enableAutoEnter, defaultValue: false);
if (autoEnterFullcreen && _isFirstTime) { if (autoEnterFullcreen && _isFirstTime) {
await Future.delayed(const Duration(milliseconds: 100)); await Future.delayed(const Duration(milliseconds: 100));
triggerFullScreen(); triggerFullScreen(status: true);
} }
} catch (err) { } catch (err) {
dataStatus.status.value = DataStatus.error; dataStatus.status.value = DataStatus.error;
@@ -967,38 +967,10 @@ class PlPlayerController {
await landScape(); await landScape();
} }
// bool isValid = if (triggerFullscreenCallback != null) {
// direction.value == 'vertical' || mode == FullScreenMode.vertical triggerFullscreenCallback!(status: status);
// ? true }
// : false; } else if (isFullScreen.value && !status) {
// var result = await showDialog(
// context: Get.context!,
// useSafeArea: false,
// builder: (context) => Dialog.fullscreen(
// backgroundColor: Colors.black,
// child: SafeArea(
// // 忽略手机安全区域
// top: isValid,
// left: false,
// right: false,
// bottom: isValid,
// child: PLVideoPlayer(
// controller: this,
// headerControl: headerControl,
// bottomControl: bottomControl,
// danmuWidget: danmuWidget,
// ),
// ),
// ),
// );
// if (result == null) {
// // 退出全屏
// StatusBarControl.setHidden(false, animation: StatusBarAnimation.FADE);
// exitFullScreen();
// await verticalScreen();
// toggleFullScreen(false);
// }
} else if (isFullScreen.value) {
if (!setting.get(SettingBoxKey.horizontalScreen, defaultValue: false)) { if (!setting.get(SettingBoxKey.horizontalScreen, defaultValue: false)) {
StatusBarControl.setHidden(false, animation: StatusBarAnimation.FADE); StatusBarControl.setHidden(false, animation: StatusBarAnimation.FADE);
// Get.back(); // Get.back();
@@ -1006,11 +978,11 @@ class PlPlayerController {
} }
exitFullScreen(); exitFullScreen();
toggleFullScreen(false); toggleFullScreen(false);
}
if (triggerFullscreenCallback != null) { if (triggerFullscreenCallback != null) {
triggerFullscreenCallback!(status: status); triggerFullscreenCallback!(status: status);
} }
} }
}
void addPositionListener(Function(Duration position) listener) => void addPositionListener(Function(Duration position) listener) =>
_positionListeners.add(listener); _positionListeners.add(listener);