mod: upPanel clickUpCb

This commit is contained in:
guozhigq
2024-11-06 23:42:55 +08:00
parent 0ad3d45dd2
commit bd9745c534
2 changed files with 17 additions and 22 deletions

View File

@ -9,9 +9,7 @@ import 'package:pilipala/common/skeleton/dynamic_card.dart';
import 'package:pilipala/common/widgets/http_error.dart'; import 'package:pilipala/common/widgets/http_error.dart';
import 'package:pilipala/common/widgets/no_data.dart'; import 'package:pilipala/common/widgets/no_data.dart';
import 'package:pilipala/models/dynamics/result.dart'; import 'package:pilipala/models/dynamics/result.dart';
import 'package:pilipala/plugin/pl_popup/index.dart';
import 'package:pilipala/utils/feed_back.dart'; import 'package:pilipala/utils/feed_back.dart';
import 'package:pilipala/utils/global_data_cache.dart';
import 'package:pilipala/utils/main_stream.dart'; import 'package:pilipala/utils/main_stream.dart';
import 'package:pilipala/utils/route_push.dart'; import 'package:pilipala/utils/route_push.dart';
import 'package:pilipala/utils/storage.dart'; import 'package:pilipala/utils/storage.dart';
@ -19,7 +17,6 @@ import 'package:pilipala/utils/storage.dart';
import '../mine/controller.dart'; import '../mine/controller.dart';
import 'controller.dart'; import 'controller.dart';
import 'widgets/dynamic_panel.dart'; import 'widgets/dynamic_panel.dart';
import 'up_dynamic/route_panel.dart';
import 'widgets/up_panel.dart'; import 'widgets/up_panel.dart';
class DynamicsPage extends StatefulWidget { class DynamicsPage extends StatefulWidget {
@ -209,21 +206,7 @@ class _DynamicsPageState extends State<DynamicsPage>
return Obx( return Obx(
() => UpPanel( () => UpPanel(
upData: _dynamicsController.upData.value, upData: _dynamicsController.upData.value,
onClickUpCb: (data) { dynamicsController: _dynamicsController,
if (GlobalDataCache().enableDynamicSwitch) {
Navigator.push(
context,
PlPopupRoute(
child: OverlayPanel(
ctr: _dynamicsController,
upInfo: data,
),
),
);
} else {
_dynamicsController.onTapUp(data);
}
},
), ),
); );
} else { } else {

View File

@ -4,18 +4,22 @@ import 'package:get/get.dart';
import 'package:pilipala/common/widgets/network_img_layer.dart'; import 'package:pilipala/common/widgets/network_img_layer.dart';
import 'package:pilipala/models/dynamics/up.dart'; import 'package:pilipala/models/dynamics/up.dart';
import 'package:pilipala/models/live/item.dart'; import 'package:pilipala/models/live/item.dart';
import 'package:pilipala/plugin/pl_popup/index.dart';
import 'package:pilipala/utils/feed_back.dart'; import 'package:pilipala/utils/feed_back.dart';
import 'package:pilipala/utils/global_data_cache.dart'; import 'package:pilipala/utils/global_data_cache.dart';
import 'package:pilipala/utils/utils.dart'; import 'package:pilipala/utils/utils.dart';
import '../controller.dart';
import '../up_dynamic/route_panel.dart';
class UpPanel extends StatefulWidget { class UpPanel extends StatefulWidget {
final FollowUpModel upData; final FollowUpModel upData;
final Function? onClickUpCb; final DynamicsController dynamicsController;
const UpPanel({ const UpPanel({
super.key, super.key,
required this.upData, required this.upData,
this.onClickUpCb, required this.dynamicsController,
}); });
@override @override
@ -39,7 +43,15 @@ class _UpPanelState extends State<UpPanel> {
void onClickUp(data, i) { void onClickUp(data, i) {
currentMid.value = data.mid; currentMid.value = data.mid;
widget.onClickUpCb?.call(data); Navigator.push(
context,
PlPopupRoute(
child: OverlayPanel(
ctr: widget.dynamicsController,
upInfo: data,
),
),
).then((value) => {currentMid.value = -1});
} }
void onClickUpAni(data, i) { void onClickUpAni(data, i) {
@ -49,7 +61,7 @@ class _UpPanelState extends State<UpPanel> {
final upLen = upList.length; final upLen = upList.length;
currentMid.value = data.mid; currentMid.value = data.mid;
widget.onClickUpCb?.call(data); widget.dynamicsController.onTapUp(data);
double moveDistance = 0.0; double moveDistance = 0.0;
final totalItemsWidth = itemWidth * (upLen + liveLen); final totalItemsWidth = itemWidth * (upLen + liveLen);