@@ -29,80 +29,78 @@ class _MainSearchLoaderState extends State<MainSearchLoader> {
2929 Future clearOldEntries = configHandler.clearOldDatesOfOpenendEntries ();
3030
3131 // prepare Action Entries
32- ActionEntryList returnValue = ActionEntryList (entries: []);
33- returnValue.entries.addAll (getRecommendations (context));
34- returnValue.entries.addAll (getBasicEntries (context));
32+
33+ List <Future <List <ActionEntry >>> futures = [];
3534
3635 if (configHandler.getValueUnsafe ("search_filter_basic_folders" , true )) {
3736 print ("Loading basic folders" );
38- var folderEntries = await Linux .getAllFolderEntriesOfUser (context)
39- .timeout (
40- timeoutDuration,
41- onTimeout: () =>
42- _onTimeoutOfSearchLoadingModule ("folderEntries" ));
43- returnValue.entries.addAll (folderEntries);
37+ futures.add (Linux .getAllFolderEntriesOfUser (context).timeout (
38+ timeoutDuration,
39+ onTimeout: () =>
40+ _onTimeoutOfSearchLoadingModule ("applicationEntries" )));
41+ // future1 = Linux.getAllFolderEntriesOfUser(context);
4442 }
43+
4544 if (configHandler.getValueUnsafe ("search_filter_applications" , true )) {
4645 print ("Loading applications" );
47- var applicationEntries = await Linux .getAllAvailableApplications ()
48- .timeout (timeoutDuration,
49- onTimeout: () =>
50- _onTimeoutOfSearchLoadingModule ("applicationEntries" ));
51- returnValue.entries.addAll (applicationEntries);
46+ futures.add (Linux .getAllAvailableApplications ().timeout (timeoutDuration,
47+ onTimeout: () =>
48+ _onTimeoutOfSearchLoadingModule ("applicationEntries" )));
5249 }
5350
5451 if (configHandler.getValueUnsafe (
5552 "search_filter_recently_used_files_and_folders" , true )) {
5653 print ("Loading recently used files and folders" );
57- var recentFiles = await Linux .getRecentFiles (context).timeout (
58- timeoutDuration,
59- onTimeout: () => _onTimeoutOfSearchLoadingModule ("recentFiles" ));
60- returnValue.entries.addAll (recentFiles);
54+ futures.add (Linux .getRecentFiles (context).timeout (timeoutDuration,
55+ onTimeout: () => _onTimeoutOfSearchLoadingModule ("recentFiles" )));
6156 }
6257
6358 if (configHandler.getValueUnsafe (
6459 "search_filter_favorite_files_and_folder_bookmarks" , true )) {
6560 print ("Loading favorite files and folder bookmarks" );
66- var favoriteFiles = await Linux .getFavoriteFiles (context).timeout (
67- timeoutDuration,
68- onTimeout: () => _onTimeoutOfSearchLoadingModule ("favoriteFiles" ));
69- returnValue.entries.addAll (favoriteFiles);
61+ futures.add (Linux .getFavoriteFiles (context).timeout (timeoutDuration,
62+ onTimeout: () => _onTimeoutOfSearchLoadingModule ("favoriteFiles" )));
7063 }
7164
7265 if (configHandler.getValueUnsafe ("search_filter_bookmarks" , true )) {
7366 print ("Loading browser bookmarks" );
74- var browserBookmarks = await Linux .getBrowserBookmarks (context).timeout (
75- timeoutDuration,
76- onTimeout: () => _onTimeoutOfSearchLoadingModule ("browserBookmarks" ));
77- returnValue.entries.addAll (browserBookmarks);
78- }
79-
80- if (configHandler.getValueUnsafe (
81- "search_filter_recently_used_files_and_folders" , true )) {
82- print ("Loading recently used files and folders" );
83- var additionalFolders =
84- Linux .getFoldersOfActionEntries (context, returnValue.entries);
85- returnValue.entries.addAll (additionalFolders);
67+ futures.add (Linux .getBrowserBookmarks (context).timeout (timeoutDuration,
68+ onTimeout: () =>
69+ _onTimeoutOfSearchLoadingModule ("browserBookmarks" )));
8670 }
8771
8872 // Flatpak Index Installations
8973 if (configHandler.getValueUnsafe ("search_filter_install_software" , true )) {
9074 print ("Loading flatpaks" );
91- var flatpaks = await Linux .getAvailableFlatpaks (context).timeout (
92- timeoutDuration,
93- onTimeout: () => _onTimeoutOfSearchLoadingModule ("flatpaks" ));
94- returnValue.entries.addAll (flatpaks);
75+ futures.add (Linux .getAvailableFlatpaks (context).timeout (timeoutDuration,
76+ onTimeout: () => _onTimeoutOfSearchLoadingModule ("flatpaks" )));
9577 }
9678
9779 // Deinstallation Entries.
9880 if (configHandler.getValueUnsafe (
9981 "search_filter_uninstall_software" , true )) {
10082 print ("Loading uninstall entries" );
101- var actions = await Linux .getUninstallEntries (context).timeout (
102- timeoutDuration,
83+ futures.add (Linux .getUninstallEntries (context).timeout (timeoutDuration,
10384 onTimeout: () =>
104- _onTimeoutOfSearchLoadingModule ("uninstall_entries" ));
105- returnValue.entries.addAll (actions);
85+ _onTimeoutOfSearchLoadingModule ("uninstall_entries" )));
86+ }
87+
88+ ActionEntryList returnValue = ActionEntryList (entries: []);
89+ returnValue.entries.addAll (getRecommendations (context));
90+ returnValue.entries.addAll (getBasicEntries (context));
91+
92+ // Collect all Futures in our returnValue.
93+ for (Future <List <ActionEntry >> future in futures) {
94+ returnValue.entries.addAll (await future);
95+ }
96+
97+ if (configHandler.getValueUnsafe (
98+ "search_filter_recently_used_files_and_folders" , true )) {
99+ print ("Loading recently used files and folders" );
100+ var additionalFolders =
101+ Linux .getFoldersOfActionEntries (context, returnValue.entries);
102+ print ("Finished: search_filter_recently_used_files_and_folders" );
103+ returnValue.entries.addAll (additionalFolders);
106104 }
107105
108106 // Remove action entries for specific environments
@@ -123,6 +121,10 @@ class _MainSearchLoaderState extends State<MainSearchLoader> {
123121 await configHandler.setValue ("runFirstStartUp" , false );
124122 await clearOldEntries;
125123
124+ // EntryCache.saveEntries(returnValue.entries);
125+
126+ // returnValue = EntryCache.loadEntries();
127+
126128 return returnValue;
127129 }
128130
0 commit comments