Fixed UI on archive screen
This commit is contained in:
parent
bf82b2dff3
commit
2c5d2c0d80
|
@ -47,56 +47,63 @@ class _AlbumHorizontalListWidgetState extends State<AlbumHorizontalListWidget> {
|
|||
@override
|
||||
Widget build(BuildContext context) {
|
||||
debugPrint('$runtimeType widget build');
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12),
|
||||
child: Text(
|
||||
S.of(context).albums,
|
||||
style: getEnteTextTheme(context).large,
|
||||
),
|
||||
),
|
||||
FutureBuilder<List<CollectionWithThumbnail>>(
|
||||
future: widget.collectionsFuture(),
|
||||
builder: (context, snapshot) {
|
||||
if (snapshot.hasError) {
|
||||
_logger.severe("failed to fetch albums", snapshot.error);
|
||||
return Text(S.of(context).somethingWentWrong);
|
||||
} else if (snapshot.hasData) {
|
||||
if (snapshot.data!.isEmpty) {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
final collectionsWithThumbnail =
|
||||
snapshot.data as List<CollectionWithThumbnail>;
|
||||
return Align(
|
||||
alignment: Alignment.centerLeft,
|
||||
child: SizedBox(
|
||||
height: 147, //139 + 8 (calculated from figma design)
|
||||
child: ListView.separated(
|
||||
separatorBuilder: (context, index) =>
|
||||
const SizedBox(width: 4),
|
||||
scrollDirection: Axis.horizontal,
|
||||
itemCount: collectionsWithThumbnail.length,
|
||||
padding: const EdgeInsets.symmetric(horizontal: 8),
|
||||
itemBuilder: (context, index) {
|
||||
final item = collectionsWithThumbnail[index];
|
||||
return CollectionItem(
|
||||
item,
|
||||
120,
|
||||
shouldRender: true,
|
||||
showFileCount: false,
|
||||
);
|
||||
},
|
||||
return FutureBuilder<List<CollectionWithThumbnail>>(
|
||||
future: widget.collectionsFuture(),
|
||||
builder: (context, snapshot) {
|
||||
if (snapshot.hasError) {
|
||||
_logger.severe("failed to fetch albums", snapshot.error);
|
||||
return Text(S.of(context).somethingWentWrong);
|
||||
} else if (snapshot.hasData) {
|
||||
if (snapshot.data!.isEmpty) {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
final collectionsWithThumbnail =
|
||||
snapshot.data as List<CollectionWithThumbnail>;
|
||||
return Padding(
|
||||
padding: const EdgeInsets.only(bottom: 24, top: 8),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Padding(
|
||||
padding:
|
||||
const EdgeInsets.symmetric(horizontal: 16, vertical: 12),
|
||||
child: Text(
|
||||
S.of(context).albums,
|
||||
style: getEnteTextTheme(context).large,
|
||||
),
|
||||
),
|
||||
);
|
||||
} else {
|
||||
return const EnteLoadingWidget();
|
||||
}
|
||||
},
|
||||
),
|
||||
],
|
||||
Align(
|
||||
alignment: Alignment.centerLeft,
|
||||
child: SizedBox(
|
||||
height: 147, //139 + 8 (calculated from figma design)
|
||||
child: ListView.separated(
|
||||
separatorBuilder: (context, index) =>
|
||||
const SizedBox(width: 4),
|
||||
scrollDirection: Axis.horizontal,
|
||||
itemCount: collectionsWithThumbnail.length,
|
||||
padding: const EdgeInsets.symmetric(horizontal: 8),
|
||||
itemBuilder: (context, index) {
|
||||
final item = collectionsWithThumbnail[index];
|
||||
return CollectionItem(
|
||||
item,
|
||||
120,
|
||||
shouldRender: true,
|
||||
showFileCount: false,
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
} else {
|
||||
return const Padding(
|
||||
padding: EdgeInsets.only(bottom: 24, top: 8),
|
||||
child: EnteLoadingWidget(),
|
||||
);
|
||||
}
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,11 +67,8 @@ class ArchivePage extends StatelessWidget {
|
|||
emptyState: EmptyState(
|
||||
text: S.of(context).youDontHaveAnyArchivedItems,
|
||||
),
|
||||
header: Padding(
|
||||
padding: const EdgeInsets.only(bottom: 24, top: 8),
|
||||
child: AlbumHorizontalListWidget(
|
||||
CollectionsService.instance.getArchivedCollectionWithThumb,
|
||||
),
|
||||
header: AlbumHorizontalListWidget(
|
||||
CollectionsService.instance.getArchivedCollectionWithThumb,
|
||||
),
|
||||
);
|
||||
return Scaffold(
|
||||
|
|
Loading…
Reference in a new issue