mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-05-14 21:24:02 +08:00
Compare commits
1 Commits
1.1.5-pre4
...
1.1.5-pre5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c89d6a5a59 |
@@ -56,6 +56,7 @@ import 'package:hive/hive.dart';
|
|||||||
import 'package:media_kit/media_kit.dart';
|
import 'package:media_kit/media_kit.dart';
|
||||||
import 'package:media_kit_video/media_kit_video.dart';
|
import 'package:media_kit_video/media_kit_video.dart';
|
||||||
import 'package:path/path.dart' as path;
|
import 'package:path/path.dart' as path;
|
||||||
|
import 'package:wakelock_plus/wakelock_plus.dart';
|
||||||
import 'package:window_manager/window_manager.dart';
|
import 'package:window_manager/window_manager.dart';
|
||||||
|
|
||||||
class PlPlayerController {
|
class PlPlayerController {
|
||||||
@@ -606,14 +607,6 @@ class PlPlayerController {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// _playerEventSubs = onPlayerStatusChanged.listen((PlayerStatus status) {
|
|
||||||
// if (status == PlayerStatus.playing) {
|
|
||||||
// WakelockPlus.enable();
|
|
||||||
// } else {
|
|
||||||
// WakelockPlus.disable();
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取实例 传参
|
// 获取实例 传参
|
||||||
@@ -1044,6 +1037,7 @@ class PlPlayerController {
|
|||||||
void startListeners() {
|
void startListeners() {
|
||||||
subscriptions = {
|
subscriptions = {
|
||||||
videoPlayerController!.stream.playing.listen((event) {
|
videoPlayerController!.stream.playing.listen((event) {
|
||||||
|
WakelockPlus.toggle(enable: event);
|
||||||
if (event) {
|
if (event) {
|
||||||
if (_shouldSetPip) {
|
if (_shouldSetPip) {
|
||||||
if (_isCurrVideoPage) {
|
if (_isCurrVideoPage) {
|
||||||
@@ -1777,6 +1771,9 @@ class PlPlayerController {
|
|||||||
// dataStatus.status.close();
|
// dataStatus.status.close();
|
||||||
|
|
||||||
await removeListeners();
|
await removeListeners();
|
||||||
|
if (playerStatus.playing) {
|
||||||
|
WakelockPlus.disable();
|
||||||
|
}
|
||||||
_videoPlayerController?.dispose();
|
_videoPlayerController?.dispose();
|
||||||
_videoPlayerController = null;
|
_videoPlayerController = null;
|
||||||
_videoController = null;
|
_videoController = null;
|
||||||
|
|||||||
@@ -72,7 +72,6 @@ import 'package:get/get.dart' hide ContextExtensionss;
|
|||||||
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
||||||
import 'package:media_kit_video/media_kit_video.dart';
|
import 'package:media_kit_video/media_kit_video.dart';
|
||||||
import 'package:screen_brightness_platform_interface/screen_brightness_platform_interface.dart';
|
import 'package:screen_brightness_platform_interface/screen_brightness_platform_interface.dart';
|
||||||
import 'package:wakelock_plus/wakelock_plus.dart';
|
|
||||||
import 'package:window_manager/window_manager.dart';
|
import 'package:window_manager/window_manager.dart';
|
||||||
|
|
||||||
class PLVideoPlayer extends StatefulWidget {
|
class PLVideoPlayer extends StatefulWidget {
|
||||||
@@ -149,21 +148,12 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
StreamSubscription? _controlsListener;
|
StreamSubscription? _controlsListener;
|
||||||
|
|
||||||
bool _pauseDueToPauseUponEnteringBackgroundMode = false;
|
bool _pauseDueToPauseUponEnteringBackgroundMode = false;
|
||||||
StreamSubscription<bool>? wakeLock;
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
WidgetsBinding.instance.addObserver(this);
|
WidgetsBinding.instance.addObserver(this);
|
||||||
|
|
||||||
late final player = plPlayerController.videoController?.player;
|
|
||||||
if (player != null && player.state.playing) {
|
|
||||||
WakelockPlus.enable();
|
|
||||||
}
|
|
||||||
wakeLock = player?.stream.playing.listen(
|
|
||||||
(v) => WakelockPlus.toggle(enable: v),
|
|
||||||
);
|
|
||||||
|
|
||||||
_controlsListener = plPlayerController.showControls.listen((bool val) {
|
_controlsListener = plPlayerController.showControls.listen((bool val) {
|
||||||
final visible = val && !plPlayerController.controlsLock.value;
|
final visible = val && !plPlayerController.controlsLock.value;
|
||||||
if (widget.videoDetailController?.headerCtrKey.currentState?.provider
|
if (widget.videoDetailController?.headerCtrKey.currentState?.provider
|
||||||
@@ -304,10 +294,6 @@ class _PLVideoPlayerState extends State<PLVideoPlayer>
|
|||||||
@override
|
@override
|
||||||
void dispose() {
|
void dispose() {
|
||||||
WidgetsBinding.instance.removeObserver(this);
|
WidgetsBinding.instance.removeObserver(this);
|
||||||
wakeLock?.cancel();
|
|
||||||
WakelockPlus.enabled.then((i) {
|
|
||||||
if (i) WakelockPlus.disable();
|
|
||||||
});
|
|
||||||
_danmakuListener?.cancel();
|
_danmakuListener?.cancel();
|
||||||
_tapGestureRecognizer.dispose();
|
_tapGestureRecognizer.dispose();
|
||||||
_longPressRecognizer?.dispose();
|
_longPressRecognizer?.dispose();
|
||||||
|
|||||||
Reference in New Issue
Block a user