Эх сурвалжийг харах

Merge pull request #10178 from nextcloud/galleryLongRunning

Media search improvement
Álvaro Brey 3 жил өмнө
parent
commit
b950be1f7d

+ 1 - 1
app/src/main/java/com/owncloud/android/ui/adapter/GalleryAdapter.kt

@@ -152,7 +152,7 @@ class GalleryAdapter(
     }
 
     @SuppressLint("NotifyDataSetChanged")
-    fun showAllGalleryItems(storageManager: FileDataStorageManager) {
+    fun showAllGalleryItems() {
         val items = storageManager.allGalleryItems
 
         files = items

+ 5 - 4
app/src/main/java/com/owncloud/android/ui/asynctasks/GallerySearchTask.java

@@ -43,6 +43,8 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
+import androidx.lifecycle.Lifecycle;
+
 public class GallerySearchTask extends AsyncTask<Void, Void, GallerySearchTask.Result> {
 
     private final User user;
@@ -99,9 +101,6 @@ public class GallerySearchTask extends AsyncTask<Void, Void, GallerySearchTask.R
 
                 boolean emptySearch = parseMedia(startDate, endDate, result.getData());
                 long lastTimeStamp = findLastTimestamp(result.getData());
-
-                photoFragment.showAllGalleryItems();
-
                 return new Result(result.isSuccess(), emptySearch, lastTimeStamp);
             } else {
                 return new Result(false, false, -1);
@@ -117,7 +116,9 @@ public class GallerySearchTask extends AsyncTask<Void, Void, GallerySearchTask.R
             photoFragment.setLoading(false);
             photoFragment.searchCompleted(result.emptySearch, result.lastTimestamp);
 
-            if (!result.success) {
+            if (result.success && photoFragment.getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.RESUMED)) {
+                photoFragment.showAllGalleryItems();
+            } else {
                 photoFragment.setEmptyListMessage(SearchType.GALLERY_SEARCH);
             }
         }

+ 2 - 2
app/src/main/java/com/owncloud/android/ui/fragment/GalleryFragment.java

@@ -155,7 +155,7 @@ public class GalleryFragment extends OCFileListFragment {
         setEmptyListLoadingMessage();
 
         // always show first stored items
-        mAdapter.showAllGalleryItems(mContainerActivity.getStorageManager());
+        mAdapter.showAllGalleryItems();
 
         setFabVisible(false);
 
@@ -262,6 +262,6 @@ public class GalleryFragment extends OCFileListFragment {
     }
 
     public void showAllGalleryItems() {
-        mAdapter.showAllGalleryItems(mContainerActivity.getStorageManager());
+        mAdapter.showAllGalleryItems();
     }
 }