From a98a0df0ef0472b6d5ed2ad65f13835633eb91b6 Mon Sep 17 00:00:00 2001 From: dom Date: Mon, 15 Jun 2026 09:57:26 +0800 Subject: [PATCH] opt ui Signed-off-by: dom --- lib/pages/dynamics_tab/controller.dart | 6 +++--- lib/pages/dynamics_tab/view.dart | 3 ++- lib/pages/video/introduction/ugc/view.dart | 22 +++++++++++----------- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/lib/pages/dynamics_tab/controller.dart b/lib/pages/dynamics_tab/controller.dart index fb81cf069..999ecf69b 100644 --- a/lib/pages/dynamics_tab/controller.dart +++ b/lib/pages/dynamics_tab/controller.dart @@ -1,5 +1,6 @@ import 'dart:async' show StreamSubscription; +import 'package:PiliPlus/common/widgets/scroll_physics.dart'; import 'package:PiliPlus/http/dynamics.dart'; import 'package:PiliPlus/http/loading_state.dart'; import 'package:PiliPlus/http/msg.dart'; @@ -9,13 +10,12 @@ import 'package:PiliPlus/pages/common/common_list_controller.dart'; import 'package:PiliPlus/pages/dynamics/controller.dart'; import 'package:PiliPlus/pages/main/controller.dart'; import 'package:PiliPlus/services/account_service.dart'; -import 'package:PiliPlus/utils/extension/scroll_controller_ext.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:get/get.dart'; class DynamicsTabController extends CommonListController - with AccountMixin { + with AccountMixin, ReloadMixin { DynamicsTabController({required this.dynamicsType}); final DynamicsTabType dynamicsType; String offset = ''; @@ -76,7 +76,7 @@ class DynamicsTabController @override Future onReload() { - scrollController.jumpToTop(); + reload = true; return super.onReload(); } diff --git a/lib/pages/dynamics_tab/view.dart b/lib/pages/dynamics_tab/view.dart index 4dcc4f669..5b4173cfb 100644 --- a/lib/pages/dynamics_tab/view.dart +++ b/lib/pages/dynamics_tab/view.dart @@ -1,5 +1,6 @@ import 'package:PiliPlus/common/widgets/flutter/refresh_indicator.dart'; import 'package:PiliPlus/common/widgets/loading_widget/http_error.dart'; +import 'package:PiliPlus/common/widgets/scroll_physics.dart'; import 'package:PiliPlus/http/loading_state.dart'; import 'package:PiliPlus/models/common/dynamic/dynamics_type.dart'; import 'package:PiliPlus/models/dynamics/result.dart'; @@ -54,7 +55,7 @@ class _DynamicsTabPageState extends State key: widget.dynamicsType == .all ? null : PageStorageKey(widget.dynamicsType), - physics: const AlwaysScrollableScrollPhysics(), + physics: ReloadScrollPhysics(controller: controller), controller: controller.scrollController, slivers: [ SliverPadding( diff --git a/lib/pages/video/introduction/ugc/view.dart b/lib/pages/video/introduction/ugc/view.dart index 3e288eeec..57d773ea2 100644 --- a/lib/pages/video/introduction/ugc/view.dart +++ b/lib/pages/video/introduction/ugc/view.dart @@ -525,17 +525,17 @@ class _UgcIntroPanelState extends State { onCancelTriple: introController.onCancelTriple, ), ), - // Obx( - // () => ActionItem( - // icon: const Icon(FontAwesomeIcons.thumbsDown), - // selectIcon: const Icon(FontAwesomeIcons.solidThumbsDown), - // onTap: () => introController.handleAction( - // introController.actionDislikeVideo, - // ), - // selectStatus: introController.hasDislike.value, - // text: "点踩", - // ), - // ), + Obx( + () => ActionItem( + icon: const Icon(FontAwesomeIcons.thumbsDown), + selectIcon: const Icon(FontAwesomeIcons.solidThumbsDown), + onTap: () => introController.handleAction( + introController.actionDislikeVideo, + ), + selectStatus: introController.hasDislike.value, + text: "点踩", + ), + ), Obx( () => ActionItem( animation: introController.tripleAnimation,