mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-06-16 23:40:10 +08:00
@@ -36,7 +36,7 @@ class BiliDownloadEntryInfo with MultiSelectData {
|
||||
|
||||
late String pageDirPath;
|
||||
late String entryDirPath;
|
||||
DownloadStatus status = .wait;
|
||||
late DownloadStatus status = .wait;
|
||||
|
||||
int get cid => source?.cid ?? pageData!.cid;
|
||||
|
||||
|
||||
@@ -115,8 +115,8 @@ class _LiveRoomPageState extends State<LiveRoomPage>
|
||||
}
|
||||
await _liveRoomController.playerInit(autoplay: shouldPlay);
|
||||
}
|
||||
if (!mounted) return;
|
||||
plPlayerController.addStatusLister(playerListener);
|
||||
|
||||
super.didPopNext();
|
||||
}
|
||||
|
||||
|
||||
@@ -290,10 +290,10 @@ class _SavePanelState extends State<SavePanel> {
|
||||
}
|
||||
|
||||
Future<void> _onSaveOrSharePic([bool isShare = false]) async {
|
||||
if (!isShare && PlatformUtils.isMobile) {
|
||||
if (mounted && !await ImageUtils.checkPermissionDependOnSdkInt()) {
|
||||
return;
|
||||
}
|
||||
if (!isShare &&
|
||||
PlatformUtils.isMobile &&
|
||||
!await ImageUtils.checkPermissionDependOnSdkInt()) {
|
||||
return;
|
||||
}
|
||||
SmartDialog.showLoading();
|
||||
try {
|
||||
|
||||
@@ -313,6 +313,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
||||
} else {
|
||||
await videoDetailController.playerInit(autoplay: true);
|
||||
}
|
||||
if (!mounted || !isShowing) return;
|
||||
plPlayerController!
|
||||
..addStatusLister(playerListener)
|
||||
..addPositionListener(positionListener);
|
||||
@@ -370,7 +371,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
||||
|
||||
@override
|
||||
// 离开当前页面时
|
||||
Future<void> didPushNext() async {
|
||||
void didPushNext() {
|
||||
if (Get.routing.route is HeroDialogRoute) {
|
||||
videoDetailController.imageview = true;
|
||||
return;
|
||||
@@ -453,7 +454,7 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
||||
videoDetailController.videoState.value is! Error) {
|
||||
await videoDetailController.playerInit();
|
||||
}
|
||||
|
||||
if (!mounted || !isShowing) return;
|
||||
plPlayerController
|
||||
?..addStatusLister(playerListener)
|
||||
..addPositionListener(positionListener);
|
||||
|
||||
@@ -1582,12 +1582,19 @@ class PlPlayerController {
|
||||
}
|
||||
}
|
||||
|
||||
void addPositionListener(Function(Duration position) listener) =>
|
||||
_positionListeners.add(listener);
|
||||
void addPositionListener(Function(Duration position) listener) {
|
||||
if (_playerCount == 0) return;
|
||||
_positionListeners.add(listener);
|
||||
}
|
||||
|
||||
void removePositionListener(Function(Duration position) listener) =>
|
||||
_positionListeners.remove(listener);
|
||||
void addStatusLister(Function(PlayerStatus status) listener) =>
|
||||
_statusListeners.add(listener);
|
||||
|
||||
void addStatusLister(Function(PlayerStatus status) listener) {
|
||||
if (_playerCount == 0) return;
|
||||
_statusListeners.add(listener);
|
||||
}
|
||||
|
||||
void removeStatusLister(Function(PlayerStatus status) listener) =>
|
||||
_statusListeners.remove(listener);
|
||||
|
||||
|
||||
@@ -128,7 +128,7 @@ abstract final class ImageUtils {
|
||||
},
|
||||
);
|
||||
if (success) {
|
||||
SmartDialog.showToast(' Live Photo 已保存 ');
|
||||
SmartDialog.showToast(' 已保存 ');
|
||||
} else {
|
||||
SmartDialog.showToast('保存失败');
|
||||
return false;
|
||||
@@ -198,6 +198,7 @@ abstract final class ImageUtils {
|
||||
}
|
||||
});
|
||||
final result = await Future.wait(futures, eagerError: true);
|
||||
bool success = true;
|
||||
if (PlatformUtils.isMobile) {
|
||||
final delList = <String>[];
|
||||
final saveList = <SaveFileData>[];
|
||||
@@ -211,6 +212,8 @@ abstract final class ImageUtils {
|
||||
androidRelativePath: _androidRelativePath,
|
||||
),
|
||||
);
|
||||
} else {
|
||||
success = false;
|
||||
}
|
||||
}
|
||||
await SaverGallery.saveFiles(saveList, skipIfExists: false);
|
||||
@@ -225,6 +228,8 @@ abstract final class ImageUtils {
|
||||
fileName: res.name,
|
||||
del: res.del,
|
||||
);
|
||||
} else {
|
||||
success = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -232,9 +237,9 @@ abstract final class ImageUtils {
|
||||
SmartDialog.showToast('已取消下载');
|
||||
return false;
|
||||
} else {
|
||||
SmartDialog.showToast('图片已保存');
|
||||
SmartDialog.showToast(success ? ' 已保存 ' : '保存失败');
|
||||
}
|
||||
return true;
|
||||
return success;
|
||||
} catch (e) {
|
||||
if (cancelToken?.isCancelled == true) {
|
||||
SmartDialog.showToast('已取消下载');
|
||||
|
||||
Reference in New Issue
Block a user