Add empty states for all grids
This commit is contained in:
parent
df630c2b91
commit
dcce6c5962
4 changed files with 15 additions and 3 deletions
3
lib/ui/common_elements.dart
Normal file
3
lib/ui/common_elements.dart
Normal file
|
@ -0,0 +1,3 @@
|
|||
import 'package:flutter/widgets.dart';
|
||||
|
||||
final nothingToSeeHere = Center(child: Text("Nothing to see here! 👀"));
|
|
@ -10,6 +10,7 @@ import 'package:photos/models/device_folder.dart';
|
|||
import 'package:photos/models/filters/favorite_items_filter.dart';
|
||||
import 'package:photos/models/filters/folder_name_filter.dart';
|
||||
import 'package:photos/models/filters/video_file_filter.dart';
|
||||
import 'package:photos/ui/common_elements.dart';
|
||||
import 'package:photos/ui/device_folder_page.dart';
|
||||
import 'package:photos/ui/loading_widget.dart';
|
||||
import 'package:photos/ui/thumbnail_widget.dart';
|
||||
|
@ -36,10 +37,13 @@ class _DeviceFolderGalleryWidgetState extends State<DeviceFolderGalleryWidget> {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return FutureBuilder(
|
||||
return FutureBuilder<List<DeviceFolder>>(
|
||||
future: _getDeviceFolders(),
|
||||
builder: (context, snapshot) {
|
||||
if (snapshot.hasData) {
|
||||
if (snapshot.data.length == 0) {
|
||||
return nothingToSeeHere;
|
||||
}
|
||||
return _getDeviceFolderGalleryWidget(snapshot.data);
|
||||
} else if (snapshot.hasError) {
|
||||
return Text(snapshot.error.toString());
|
||||
|
|
|
@ -7,6 +7,7 @@ import 'package:logging/logging.dart';
|
|||
import 'package:photos/events/event.dart';
|
||||
import 'package:photos/models/file.dart';
|
||||
import 'package:photos/models/selected_files.dart';
|
||||
import 'package:photos/ui/common_elements.dart';
|
||||
import 'package:photos/ui/detail_page.dart';
|
||||
import 'package:photos/ui/loading_widget.dart';
|
||||
import 'package:photos/ui/sync_indicator.dart';
|
||||
|
@ -104,7 +105,7 @@ class _GalleryState extends State<Gallery> {
|
|||
Widget _onDataLoaded() {
|
||||
_logger.info("Loaded " + _files.length.toString());
|
||||
if (_files.isEmpty) {
|
||||
return Center(child: Text("Nothing to see here! 👀"));
|
||||
return nothingToSeeHere;
|
||||
}
|
||||
_collateFiles();
|
||||
_scrollController = ScrollController(
|
||||
|
@ -158,6 +159,9 @@ class _GalleryState extends State<Gallery> {
|
|||
}
|
||||
fileIndex--;
|
||||
}
|
||||
if (fileIndex < 0 || fileIndex >= _collatedFiles.length) {
|
||||
return Container();
|
||||
}
|
||||
var files = _collatedFiles[fileIndex];
|
||||
return Column(
|
||||
children: <Widget>[_getDay(files[0].creationTime), _getGallery(files)],
|
||||
|
|
|
@ -9,6 +9,7 @@ import 'package:photos/db/folders_db.dart';
|
|||
import 'package:photos/db/files_db.dart';
|
||||
import 'package:photos/events/remote_sync_event.dart';
|
||||
import 'package:photos/models/folder.dart';
|
||||
import 'package:photos/ui/common_elements.dart';
|
||||
import 'package:photos/ui/loading_widget.dart';
|
||||
import 'package:photos/ui/remote_folder_page.dart';
|
||||
import 'package:photos/ui/thumbnail_widget.dart';
|
||||
|
@ -42,7 +43,7 @@ class _RemoteFolderGalleryWidgetState extends State<RemoteFolderGalleryWidget> {
|
|||
builder: (context, snapshot) {
|
||||
if (snapshot.hasData) {
|
||||
if (snapshot.data.isEmpty) {
|
||||
return Center(child: Text("Nothing to see here! 👀"));
|
||||
return nothingToSeeHere;
|
||||
} else {
|
||||
return _getRemoteFolderGalleryWidget(snapshot.data);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue