aboutsummaryrefslogtreecommitdiff
path: root/lib/components/SearchableAppList.dart
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2020-06-02 22:17:22 +0530
committerAkshay Nair <phenax5@gmail.com>2020-06-02 22:17:22 +0530
commitc285f8e733d448555209f95fd76eedbeef5d9e24 (patch)
treee28137a9fa79ba4c8e721df9877d0ee4671f4973 /lib/components/SearchableAppList.dart
parentc60b58a16662fb33121e94b05cc1c868d8f3f16d (diff)
downloaddaft-launcher-c285f8e733d448555209f95fd76eedbeef5d9e24.tar.gz
daft-launcher-c285f8e733d448555209f95fd76eedbeef5d9e24.zip
Adds application list component in apps view
Diffstat (limited to '')
-rw-r--r--lib/components/SearchableAppList.dart41
1 files changed, 41 insertions, 0 deletions
diff --git a/lib/components/SearchableAppList.dart b/lib/components/SearchableAppList.dart
index e69de29..8f9da2f 100644
--- a/lib/components/SearchableAppList.dart
+++ b/lib/components/SearchableAppList.dart
@@ -0,0 +1,41 @@
+import 'package:flutter/material.dart';
+import 'package:device_apps/device_apps.dart';
+
+import 'AppList.dart';
+
+class SearchableAppList extends StatelessWidget {
+ Future<List<Application>> appListF;
+ void Function(Application) openApp;
+ void Function(Application) openOptionsMenu;
+
+ SearchableAppList({ this.appListF, this.openApp, this.openOptionsMenu }): super();
+
+ int _appSorter(Application a, Application b) {
+ return a.appName.compareTo(b.appName);
+ }
+
+ @override
+ Widget build(BuildContext ctx) {
+ return Column(
+ children: [
+ Text('My text input'),
+ Expanded(child: FutureBuilder(
+ future: appListF,
+ builder: (ctx, AsyncSnapshot<List<Application>> snap) {
+ if (!snap.hasData) {
+ return Text('Loading...');
+ }
+
+ snap.data.sort(_appSorter);
+ return AppList(
+ appList: snap.data,
+ openApp: openApp,
+ openOptionsMenu: openOptionsMenu,
+ );
+ }
+ )),
+ ],
+ );
+ }
+}
+