opt: entries empty fallback

Signed-off-by: Kingtous <kingtous@qq.com>
This commit is contained in:
Kingtous 2022-08-16 12:50:08 +08:00
parent eea62352d2
commit 4bd5fe1509

View File

@ -163,17 +163,22 @@ class _FileManagerPageState extends State<FileManagerPage>
children: [ children: [
Expanded( Expanded(
child: SingleChildScrollView( child: SingleChildScrollView(
child: Obx( child: entries.isEmpty
? Offstage()
: Obx(
() { () {
final searchText = final searchText =
isLocal ? _searchTextLocal : _searchTextRemote; isLocal ? _searchTextLocal : _searchTextRemote;
final filteredEntries = entries.where((element) { final filteredEntries = searchText.isEmpty
? entries.where((element) {
if (searchText.isEmpty) { if (searchText.isEmpty) {
return true; return true;
} else { } else {
return element.name.contains(searchText.value); return element.name
.contains(searchText.value);
} }
}).toList(growable: false); }).toList(growable: false)
: entries;
return DataTable( return DataTable(
key: ValueKey(isLocal ? 0 : 1), key: ValueKey(isLocal ? 0 : 1),
showCheckboxColumn: true, showCheckboxColumn: true,
@ -266,15 +271,17 @@ class _FileManagerPageState extends State<FileManagerPage>
.replaceAll(".000", "") + .replaceAll(".000", "") +
" ", " ",
style: TextStyle( style: TextStyle(
fontSize: 12, color: MyTheme.darkGray), fontSize: 12,
color: MyTheme.darkGray),
)), )),
DataCell(Text( DataCell(Text(
sizeStr, sizeStr,
style: TextStyle( style: TextStyle(
fontSize: 12, color: MyTheme.darkGray), fontSize: 12,
color: MyTheme.darkGray),
)), )),
]); ]);
}).toList(), }).toList(growable: false),
); );
}, },
), ),
@ -753,16 +760,17 @@ class _FileManagerPageState extends State<FileManagerPage>
} }
Widget buildBread(bool isLocal) { Widget buildBread(bool isLocal) {
final directory = model.getCurrentDir(isLocal); final items = getPathBreadCrumbItems(isLocal, (list) {
print(directory.path);
return BreadCrumb(
items: getPathBreadCrumbItems(isLocal, (list) {
var path = ""; var path = "";
for (var item in list) { for (var item in list) {
path = PathUtil.join(path, item, model.getCurrentIsWindows(isLocal)); path = PathUtil.join(path, item, model.getCurrentIsWindows(isLocal));
} }
openDirectory(path, isLocal: isLocal); openDirectory(path, isLocal: isLocal);
}), });
return items.isEmpty
? Offstage()
: BreadCrumb(
items: items,
divider: Text("/").paddingSymmetric(horizontal: 4.0), divider: Text("/").paddingSymmetric(horizontal: 4.0),
overflow: ScrollableOverflow( overflow: ScrollableOverflow(
controller: getBreadCrumbScrollController(isLocal)), controller: getBreadCrumbScrollController(isLocal)),