mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-07-29 06:50:12 +08:00
custom keyboard control
Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -181,8 +181,7 @@ class _LiveRoomPageState extends State<LiveRoomPage>
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
if (Platform.isAndroid) {
|
if (Platform.isAndroid && Floating().isPipMode) {
|
||||||
if (Floating().isPipMode) {
|
|
||||||
return videoPlayerPanel(
|
return videoPlayerPanel(
|
||||||
isFullScreen,
|
isFullScreen,
|
||||||
width: maxWidth,
|
width: maxWidth,
|
||||||
@@ -191,13 +190,15 @@ class _LiveRoomPageState extends State<LiveRoomPage>
|
|||||||
needDm: !plPlayerController.pipNoDanmaku,
|
needDm: !plPlayerController.pipNoDanmaku,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
if (plPlayerController.keyboardControl) {
|
||||||
return PlayerFocus(
|
return PlayerFocus(
|
||||||
plPlayerController: plPlayerController,
|
plPlayerController: plPlayerController,
|
||||||
onSendDanmaku: _liveRoomController.onSendDanmaku,
|
onSendDanmaku: _liveRoomController.onSendDanmaku,
|
||||||
child: childWhenDisabled,
|
child: childWhenDisabled,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
return childWhenDisabled;
|
||||||
|
}
|
||||||
|
|
||||||
Widget videoPlayerPanel(
|
Widget videoPlayerPanel(
|
||||||
bool isFullScreen, {
|
bool isFullScreen, {
|
||||||
|
|||||||
@@ -130,6 +130,13 @@ List<SettingsModel> get playSettings => [
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
const SettingsModel(
|
||||||
|
settingsType: SettingsType.sw1tch,
|
||||||
|
title: '启用键盘控制',
|
||||||
|
leading: Icon(Icons.keyboard_alt_outlined),
|
||||||
|
setKey: SettingBoxKey.keyboardControl,
|
||||||
|
defaultVal: true,
|
||||||
|
),
|
||||||
const SettingsModel(
|
const SettingsModel(
|
||||||
settingsType: SettingsType.sw1tch,
|
settingsType: SettingsType.sw1tch,
|
||||||
title: '显示 SuperChat',
|
title: '显示 SuperChat',
|
||||||
|
|||||||
@@ -1484,6 +1484,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
|||||||
} else {
|
} else {
|
||||||
child = autoChoose(childWhenDisabledAlmostSquare);
|
child = autoChoose(childWhenDisabledAlmostSquare);
|
||||||
}
|
}
|
||||||
|
if (videoDetailController.plPlayerController.keyboardControl) {
|
||||||
child = PlayerFocus(
|
child = PlayerFocus(
|
||||||
plPlayerController: videoDetailController.plPlayerController,
|
plPlayerController: videoDetailController.plPlayerController,
|
||||||
introController: videoDetailController.isUgc
|
introController: videoDetailController.isUgc
|
||||||
@@ -1499,6 +1500,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
|||||||
},
|
},
|
||||||
child: child,
|
child: child,
|
||||||
);
|
);
|
||||||
|
}
|
||||||
return videoDetailController.plPlayerController.darkVideoPage
|
return videoDetailController.plPlayerController.darkVideoPage
|
||||||
? Theme(data: themeData, child: child)
|
? Theme(data: themeData, child: child)
|
||||||
: child;
|
: child;
|
||||||
|
|||||||
@@ -335,6 +335,7 @@ class PlPlayerController {
|
|||||||
late final showDmChart = Pref.showDmChart;
|
late final showDmChart = Pref.showDmChart;
|
||||||
late final showFsScreenshotBtn = Pref.showFsScreenshotBtn;
|
late final showFsScreenshotBtn = Pref.showFsScreenshotBtn;
|
||||||
late final showFsLockBtn = Pref.showFsLockBtn;
|
late final showFsLockBtn = Pref.showFsLockBtn;
|
||||||
|
late final keyboardControl = Pref.keyboardControl;
|
||||||
|
|
||||||
late final bool autoExitFullscreen = Pref.autoExitFullscreen;
|
late final bool autoExitFullscreen = Pref.autoExitFullscreen;
|
||||||
late final bool autoPlayEnable = Pref.autoPlayEnable;
|
late final bool autoPlayEnable = Pref.autoPlayEnable;
|
||||||
|
|||||||
@@ -24,7 +24,8 @@ abstract class SettingBoxKey {
|
|||||||
enableAutoEnter = 'enableAutoEnter',
|
enableAutoEnter = 'enableAutoEnter',
|
||||||
enableAutoExit = 'enableAutoExit',
|
enableAutoExit = 'enableAutoExit',
|
||||||
enableOnlineTotal = 'enableOnlineTotal',
|
enableOnlineTotal = 'enableOnlineTotal',
|
||||||
showSuperChat = 'showSuperChat';
|
showSuperChat = 'showSuperChat',
|
||||||
|
keyboardControl = 'keyboardControl';
|
||||||
|
|
||||||
static const String enableVerticalExpand = 'enableVerticalExpand',
|
static const String enableVerticalExpand = 'enableVerticalExpand',
|
||||||
feedBackEnable = 'feedBackEnable',
|
feedBackEnable = 'feedBackEnable',
|
||||||
|
|||||||
@@ -829,4 +829,7 @@ abstract class Pref {
|
|||||||
|
|
||||||
static bool get isWindowMaximized =>
|
static bool get isWindowMaximized =>
|
||||||
_setting.get(SettingBoxKey.isWindowMaximized, defaultValue: false);
|
_setting.get(SettingBoxKey.isWindowMaximized, defaultValue: false);
|
||||||
|
|
||||||
|
static bool get keyboardControl =>
|
||||||
|
_setting.get(SettingBoxKey.keyboardControl, defaultValue: true);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user