mod: image save dialog

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2024-12-29 10:31:13 +08:00
parent eca69f3d6d
commit e9945ab63c
21 changed files with 160 additions and 141 deletions

View File

@@ -1,8 +1,8 @@
import 'package:PiliPalaX/http/loading_state.dart';
import 'package:PiliPalaX/pages/common/popup_controller.dart';
import 'package:PiliPalaX/pages/common/common_controller.dart';
import 'package:PiliPalaX/http/video.dart';
class HotController extends PopupController {
class HotController extends CommonController {
// int idx = 0;
@override

View File

@@ -7,7 +7,6 @@ import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:get/get.dart';
import 'package:PiliPalaX/common/constants.dart';
import 'package:PiliPalaX/common/widgets/animated_dialog.dart';
import 'package:PiliPalaX/common/skeleton/video_card_h.dart';
import 'package:PiliPalaX/common/widgets/http_error.dart';
import 'package:PiliPalaX/pages/home/index.dart';
@@ -82,15 +81,6 @@ class _HotPageState extends State<HotPage> with AutomaticKeepAliveClientMixin {
);
}
OverlayEntry _createPopupDialog(videoItem) {
return OverlayEntry(
builder: (context) => AnimatedDialog(
closeFn: _hotController.removePopupDialog,
videoItem: videoItem,
),
);
}
Widget _buildSkeleton() {
return SliverGrid(
gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent(
@@ -125,13 +115,6 @@ class _HotPageState extends State<HotPage> with AutomaticKeepAliveClientMixin {
return VideoCardH(
videoItem: loadingState.response[index],
showPubdate: true,
longPress: () {
_hotController.popupDialog.add(
_createPopupDialog(loadingState.response[index]));
Overlay.of(context)
.insert(_hotController.popupDialog.last!);
},
longPressEnd: _hotController.removePopupDialog,
);
},
childCount: loadingState.response.length,