mod: common slide page

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-03-05 10:44:49 +08:00
parent 9c21f03df8
commit 6497fb6cd0
11 changed files with 133 additions and 153 deletions

View File

@@ -0,0 +1,37 @@
import 'package:PiliPlus/pages/common/common_slide_page.dart';
import 'package:PiliPlus/utils/storage.dart';
import 'package:flutter/material.dart';
abstract class CommonCollapseSlidePage extends CommonSlidePage {
const CommonCollapseSlidePage({super.key, super.enableSlide});
}
abstract class CommonCollapseSlidePageState<T extends CommonCollapseSlidePage>
extends CommonSlidePageState<T> {
late bool _isInit = true;
@override
void initState() {
super.initState();
if (enableSlide && GStorage.collapsibleVideoPage) {
WidgetsBinding.instance.addPostFrameCallback((_) {
if (mounted) {
setState(() {
_isInit = false;
});
}
});
}
}
@override
Widget build(BuildContext context) {
if (enableSlide && GStorage.collapsibleVideoPage && _isInit) {
return CustomScrollView(
physics: const NeverScrollableScrollPhysics(),
);
}
return super.build(context);
}
}