mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-20 03:06:59 +08:00
@@ -136,7 +136,6 @@ class MineController extends CommonDataController<FavFolderData, FavFolderData>
|
||||
bool customHandleResponse(bool isRefresh, Success<FavFolderData> response) {
|
||||
favFolderCount = response.response.count;
|
||||
loadingState.value = response;
|
||||
scrollController.jumpToTop();
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -286,12 +285,16 @@ class MineController extends CommonDataController<FavFolderData, FavFolderData>
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> onRefresh() {
|
||||
Future<void> onRefresh({bool isManual = true}) {
|
||||
if (!accountService.isLogin.value) {
|
||||
return Future.syncValue(null);
|
||||
}
|
||||
queryUserInfo();
|
||||
return super.onRefresh();
|
||||
return super.onRefresh().whenComplete(() {
|
||||
if (isManual) {
|
||||
scrollController.jumpToTop();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
@@ -430,6 +430,11 @@ class _MediaPageState extends CommonPageState<MinePage>
|
||||
);
|
||||
}
|
||||
|
||||
void _autoRefresh() => Future.delayed(
|
||||
const Duration(milliseconds: 150),
|
||||
() => controller.onRefresh(isManual: false),
|
||||
);
|
||||
|
||||
Widget _buildFav(ThemeData theme, Color secondary) {
|
||||
return Column(
|
||||
children: [
|
||||
@@ -438,12 +443,7 @@ class _MediaPageState extends CommonPageState<MinePage>
|
||||
color: theme.dividerColor.withValues(alpha: 0.1),
|
||||
),
|
||||
ListTile(
|
||||
onTap: () => Get.toNamed('/fav')?.whenComplete(
|
||||
() => Future.delayed(
|
||||
const Duration(milliseconds: 150),
|
||||
controller.onRefresh,
|
||||
),
|
||||
),
|
||||
onTap: () => Get.toNamed('/fav')?.whenComplete(_autoRefresh),
|
||||
dense: true,
|
||||
title: Padding(
|
||||
padding: const EdgeInsets.only(left: 10),
|
||||
@@ -522,12 +522,8 @@ class _MediaPageState extends CommonPageState<MinePage>
|
||||
),
|
||||
),
|
||||
),
|
||||
onPressed: () => Get.toNamed('/fav')?.whenComplete(
|
||||
() => Future.delayed(
|
||||
const Duration(milliseconds: 150),
|
||||
controller.onRefresh,
|
||||
),
|
||||
),
|
||||
onPressed: () =>
|
||||
Get.toNamed('/fav')?.whenComplete(_autoRefresh),
|
||||
icon: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
size: 18,
|
||||
@@ -540,10 +536,7 @@ class _MediaPageState extends CommonPageState<MinePage>
|
||||
return FavFolderItem(
|
||||
heroTag: Utils.generateRandomString(8),
|
||||
item: response.list[index],
|
||||
onPop: () => Future.delayed(
|
||||
const Duration(milliseconds: 150),
|
||||
controller.onRefresh,
|
||||
),
|
||||
onPop: _autoRefresh,
|
||||
);
|
||||
}
|
||||
},
|
||||
|
||||
@@ -446,21 +446,18 @@ class _VideoDetailPageVState extends State<VideoDetailPageV>
|
||||
}
|
||||
}
|
||||
|
||||
() async {
|
||||
if (videoDetailController.autoPlay) {
|
||||
await videoDetailController.playerInit(
|
||||
autoplay: videoDetailController.playerStatus?.isPlaying ?? false,
|
||||
);
|
||||
} else if (videoDetailController.plPlayerController.preInitPlayer &&
|
||||
!videoDetailController.isQuerying &&
|
||||
videoDetailController.videoState.value is! Error) {
|
||||
await videoDetailController.playerInit();
|
||||
}
|
||||
if (!mounted || !isShowing) return;
|
||||
plPlayerController
|
||||
?..addStatusLister(playerListener)
|
||||
..addPositionListener(positionListener);
|
||||
}();
|
||||
plPlayerController
|
||||
?..addStatusLister(playerListener)
|
||||
..addPositionListener(positionListener);
|
||||
if (videoDetailController.autoPlay) {
|
||||
videoDetailController.playerInit(
|
||||
autoplay: videoDetailController.playerStatus?.isPlaying ?? false,
|
||||
);
|
||||
} else if (videoDetailController.plPlayerController.preInitPlayer &&
|
||||
!videoDetailController.isQuerying &&
|
||||
videoDetailController.videoState.value is! Error) {
|
||||
videoDetailController.playerInit();
|
||||
}
|
||||
|
||||
super.didPopNext();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user