opt: search trending page

Closes #697

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-18 10:31:01 +08:00
parent 498988c2e3
commit a252ee0655

View File

@@ -57,6 +57,7 @@ class _SearchTrendingPageState extends State<SearchTrendingPage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final removePadding = context.width > 640;
return Scaffold( return Scaffold(
extendBody: true, extendBody: true,
extendBodyBehindAppBar: true, extendBodyBehindAppBar: true,
@@ -102,22 +103,40 @@ class _SearchTrendingPageState extends State<SearchTrendingPage> {
}, },
), ),
), ),
body: refreshIndicator( body: MediaQuery.removePadding(
onRefresh: () async { context: context,
await _controller.onRefresh(); removeLeft: removePadding,
}, removeRight: removePadding,
child: CustomScrollView( child: Center(
controller: _controller.scrollController, child: ConstrainedBox(
slivers: [ constraints: BoxConstraints(maxWidth: 640),
SliverToBoxAdapter( child: refreshIndicator(
child: CachedNetworkImage( onRefresh: () async {
fit: BoxFit.fitWidth, await _controller.onRefresh();
imageUrl: },
'https://activity.hdslb.com/blackboard/activity59158/img/hot_banner.fbb081df.png', child: CustomScrollView(
controller: _controller.scrollController,
slivers: [
SliverToBoxAdapter(
child: CachedNetworkImage(
fit: BoxFit.fitWidth,
fadeInDuration: const Duration(milliseconds: 120),
fadeOutDuration: const Duration(milliseconds: 120),
imageUrl:
'https://activity.hdslb.com/blackboard/activity59158/img/hot_banner.fbb081df.png',
placeholder: (context, url) {
return AspectRatio(
aspectRatio: 1125 / 528,
child: Image.asset('assets/images/loading.png'),
);
},
),
),
Obx(() => _buildBody(_controller.loadingState.value)),
],
), ),
), ),
Obx(() => _buildBody(_controller.loadingState.value)), ),
],
), ),
), ),
); );