mirror of
https://gitlab.com/nkming2/nc-photos.git
synced 2025-03-13 18:58:53 +01:00
Tap photos again to jump to the top in new photos
This commit is contained in:
parent
5f7d898078
commit
4bbfc805cc
2 changed files with 25 additions and 1 deletions
|
@ -162,7 +162,7 @@ class _HomeState extends State<Home> with TickerProviderStateMixin {
|
|||
if (index == 0) {
|
||||
KiwiContainer()
|
||||
.resolve<EventBus>()
|
||||
.fire(const HomePhotosBackToTopEvent());
|
||||
.fire(const HomePhotos2BackToTopEvent());
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ import 'package:nc_photos/download_handler.dart';
|
|||
import 'package:nc_photos/entity/collection.dart';
|
||||
import 'package:nc_photos/entity/file_descriptor.dart';
|
||||
import 'package:nc_photos/entity/file_util.dart' as file_util;
|
||||
import 'package:nc_photos/event/event.dart';
|
||||
import 'package:nc_photos/exception_event.dart';
|
||||
import 'package:nc_photos/exception_util.dart' as exception_util;
|
||||
import 'package:nc_photos/flutter_util.dart' as flutter_util;
|
||||
|
@ -61,6 +62,10 @@ part 'home_photos/type.dart';
|
|||
part 'home_photos/view.dart';
|
||||
part 'home_photos2.g.dart';
|
||||
|
||||
class HomePhotos2BackToTopEvent {
|
||||
const HomePhotos2BackToTopEvent();
|
||||
}
|
||||
|
||||
class HomePhotos2 extends StatelessWidget {
|
||||
const HomePhotos2({super.key});
|
||||
|
||||
|
@ -221,6 +226,18 @@ class _Body extends StatefulWidget {
|
|||
|
||||
@npLog
|
||||
class _BodyState extends State<_Body> {
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
_onBackToTopListener.begin();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
_onBackToTopListener.end();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return FingerListener(
|
||||
|
@ -345,6 +362,10 @@ class _BodyState extends State<_Body> {
|
|||
);
|
||||
}
|
||||
|
||||
void _onBackToTop(HomePhotos2BackToTopEvent ev) {
|
||||
_scrollController.jumpTo(0);
|
||||
}
|
||||
|
||||
/// Return the estimated scroll extent of the custom scroll view, or null
|
||||
double? _getScrollViewExtent({
|
||||
required BuildContext context,
|
||||
|
@ -388,6 +409,9 @@ class _BodyState extends State<_Body> {
|
|||
|
||||
final _scrollController = ScrollController();
|
||||
var _finger = 0;
|
||||
|
||||
late final _onBackToTopListener =
|
||||
AppEventListener<HomePhotos2BackToTopEvent>(_onBackToTop);
|
||||
}
|
||||
|
||||
typedef _BlocBuilder = BlocBuilder<_Bloc, _State>;
|
||||
|
|
Loading…
Reference in a new issue