v1.3.4+60
All checks were successful
Flutter Schmutter / build (push) Successful in 5m30s

This commit is contained in:
2025-06-18 04:48:19 +02:00
parent ee2db04a36
commit 0d792fdf46
5 changed files with 125 additions and 63 deletions

View File

@@ -1,3 +1,5 @@
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
@@ -18,6 +20,7 @@ class MediaGrid extends StatefulWidget {
class _MediaGridState extends State<MediaGrid> {
final MediaController controller = Get.find<MediaController>();
final ScrollController _scrollController = ScrollController();
Timer? _debounce;
@override
void initState() {
@@ -31,12 +34,15 @@ class _MediaGridState extends State<MediaGrid> {
_scrollController.addListener(() {
if (_scrollController.position.extentAfter < 200 &&
!controller.isLoading.value) {
controller.loadMediaItems(
older: controller.mediaItems.isNotEmpty
? controller.mediaItems.last.id
: null,
append: true,
);
if (_debounce?.isActive ?? false) _debounce!.cancel();
_debounce = Timer(const Duration(milliseconds: 300), () {
controller.loadMediaItems(
older: controller.mediaItems.isNotEmpty
? controller.mediaItems.last.id
: null,
append: true,
);
});
}
});
}