Skip to content

Commit

Permalink
feat: 折叠屏内屏(展开状态)竖屏全屏适配
Browse files Browse the repository at this point in the history
  • Loading branch information
orz12 committed Jan 26, 2024
1 parent 1da311c commit 7bf9acb
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
8 changes: 5 additions & 3 deletions lib/plugin/pl_player/controller.dart
Original file line number Diff line number Diff line change
Expand Up @@ -278,8 +278,7 @@ class PlPlayerController {
danmakuDurationVal =
localCache.get(LocalCacheKey.danmakuDuration, defaultValue: 4.0);
// 描边粗细
strokeWidth =
localCache.get(LocalCacheKey.strokeWidth, defaultValue: 1.5);
strokeWidth = localCache.get(LocalCacheKey.strokeWidth, defaultValue: 1.5);
playRepeat = PlayRepeat.values.toList().firstWhere(
(e) =>
e.value ==
Expand Down Expand Up @@ -952,7 +951,10 @@ class PlPlayerController {
/// 进入全屏
await enterFullScreen();
if (mode == FullScreenMode.vertical ||
(mode == FullScreenMode.auto && direction.value == 'vertical')) {
(mode == FullScreenMode.auto && direction.value == 'vertical') ||
(mode == FullScreenMode.ratio &&
(Get.height / Get.width < 1.25 ||
direction.value == 'vertical'))) {
await verticalScreen();
} else {
await landScape();
Expand Down
8 changes: 5 additions & 3 deletions lib/plugin/pl_player/models/fullscreen_mode.dart
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,17 @@ enum FullScreenMode {
// 始终竖屏
vertical,
// 始终横屏
horizontal
horizontal,
// 屏幕长宽比<1.25或为竖屏视频时竖屏,否则横屏
ratio,
}

extension FullScreenModeDesc on FullScreenMode {
String get description => ['自适应', '始终竖屏', '始终横屏'][index];
String get description => ['按视频方向(默认)', '强制竖屏', '强制横屏', '屏幕长宽比<1.25或为竖屏视频时竖屏,否则横屏'][index];
}

extension FullScreenModeCode on FullScreenMode {
static final List<int> _codeList = [0, 1, 2];
static final List<int> _codeList = [0, 1, 2, 3];
int get code => _codeList[index];

static FullScreenMode? fromCode(int code) {
Expand Down

0 comments on commit 7bf9acb

Please sign in to comment.