Compare commits
2 Commits
06b4cb863e
...
e74aba2d8b
Author | SHA1 | Date | |
---|---|---|---|
e74aba2d8b | |||
41f456893f |
@ -47,11 +47,12 @@ class _ExploreScreenState extends State<ExploreScreen> {
|
|||||||
if (res.statusCode == 200) {
|
if (res.statusCode == 200) {
|
||||||
final result =
|
final result =
|
||||||
PaginationResult.fromJson(jsonDecode(utf8.decode(res.bodyBytes)));
|
PaginationResult.fromJson(jsonDecode(utf8.decode(res.bodyBytes)));
|
||||||
final isLastPage = (result.data?.length ?? 0) < pageSize;
|
final isLastPage = (result.count - pageKey) < pageSize;
|
||||||
if (isLastPage) {
|
if (isLastPage || result.data == null) {
|
||||||
paginationController.appendLastPage(feed);
|
paginationController.appendLastPage(feed);
|
||||||
} else {
|
} else {
|
||||||
final feed = result.data!.map((x) => Feed.fromJson(x)).toList();
|
final feed =
|
||||||
|
result.data?.map((x) => Feed.fromJson(x)).toList() ?? List.empty();
|
||||||
final nextPageKey = pageKey + feed.length;
|
final nextPageKey = pageKey + feed.length;
|
||||||
paginationController.appendPage(feed, nextPageKey);
|
paginationController.appendPage(feed, nextPageKey);
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,7 @@ class _MomentEditorScreenState extends State<MomentEditorScreen> {
|
|||||||
bool showRecommendationBanner = true;
|
bool showRecommendationBanner = true;
|
||||||
|
|
||||||
Future<void> postMoment() async {
|
Future<void> postMoment() async {
|
||||||
if (authClient.client == null) return;
|
if (!await authClient.isAuthorized()) return;
|
||||||
|
|
||||||
setState(() => isSubmitting = true);
|
setState(() => isSubmitting = true);
|
||||||
var res = await authClient.client!.post(
|
var res = await authClient.client!.post(
|
||||||
|
@ -51,15 +51,15 @@ class FeedItem extends StatelessWidget {
|
|||||||
child: FlutterCarousel(
|
child: FlutterCarousel(
|
||||||
options: CarouselOptions(
|
options: CarouselOptions(
|
||||||
height: 240.0,
|
height: 240.0,
|
||||||
|
viewportFraction: 1.0,
|
||||||
showIndicator: true,
|
showIndicator: true,
|
||||||
slideIndicator: const CircularSlideIndicator(),
|
slideIndicator: const CircularSlideIndicator(),
|
||||||
),
|
),
|
||||||
items: item.attachments?.map((x) {
|
items: item.attachments?.map((x) {
|
||||||
return Builder(
|
return Builder(
|
||||||
builder: (BuildContext context) {
|
builder: (BuildContext context) {
|
||||||
return Container(
|
return SizedBox(
|
||||||
width: MediaQuery.of(context).size.width,
|
width: MediaQuery.of(context).size.width,
|
||||||
margin: const EdgeInsets.symmetric(horizontal: 5.0),
|
|
||||||
child: InkWell(
|
child: InkWell(
|
||||||
child: Image.network(
|
child: Image.network(
|
||||||
getFileUrl(x.fileId),
|
getFileUrl(x.fileId),
|
||||||
|
@ -12,6 +12,7 @@ class ImageLightbox extends StatelessWidget {
|
|||||||
child: Center(
|
child: Center(
|
||||||
child: SizedBox(
|
child: SizedBox(
|
||||||
height: MediaQuery.of(context).size.height,
|
height: MediaQuery.of(context).size.height,
|
||||||
|
width: MediaQuery.of(context).size.width,
|
||||||
child: InteractiveViewer(
|
child: InteractiveViewer(
|
||||||
boundaryMargin: const EdgeInsets.all(128),
|
boundaryMargin: const EdgeInsets.all(128),
|
||||||
minScale: 0.1,
|
minScale: 0.1,
|
||||||
|
Reference in New Issue
Block a user