diff options
author | Thomas <tschneider.ac@gmail.com> | 2022-11-10 18:55:41 +0100 |
---|---|---|
committer | Thomas <tschneider.ac@gmail.com> | 2022-11-10 18:55:41 +0100 |
commit | f7c7ea98ad3abbeb5b318fd3488e4daea556c64a (patch) | |
tree | 67840f62863deb4bcda5b4a162ec4ed6101f1813 | |
parent | 9ed4964793c68c58341b8dc228593f213984e240 (diff) |
Fix issue #430 - Filter down instances from helper.3.6.3
-rw-r--r-- | app/src/main/java/app/fedilab/android/interfaces/InstancesSocialService.java | 2 | ||||
-rw-r--r-- | app/src/main/java/app/fedilab/android/viewmodel/mastodon/InstanceSocialVM.java | 13 |
2 files changed, 13 insertions, 2 deletions
diff --git a/app/src/main/java/app/fedilab/android/interfaces/InstancesSocialService.java b/app/src/main/java/app/fedilab/android/interfaces/InstancesSocialService.java index eed29bf86..aba3888a1 100644 --- a/app/src/main/java/app/fedilab/android/interfaces/InstancesSocialService.java +++ b/app/src/main/java/app/fedilab/android/interfaces/InstancesSocialService.java @@ -23,7 +23,7 @@ import retrofit2.http.Query; public interface InstancesSocialService { - @GET("instances/search?name=true") + @GET("instances/search?name=true&count=50") Call<InstanceSocial> getInstances(@Header("Authorization") String token, @Query("q") String search); } diff --git a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/InstanceSocialVM.java b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/InstanceSocialVM.java index ecbffc630..1fac3f555 100644 --- a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/InstanceSocialVM.java +++ b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/InstanceSocialVM.java @@ -22,6 +22,7 @@ import androidx.annotation.NonNull; import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.MutableLiveData; +import java.util.ArrayList; import java.util.concurrent.TimeUnit; import app.fedilab.android.client.entities.app.InstanceSocial; @@ -73,7 +74,17 @@ public class InstanceSocialVM extends AndroidViewModel { Response<InstanceSocial> response = instanceSocialCall.execute(); if (response.isSuccessful() && response.body() != null) { Handler mainHandler = new Handler(Looper.getMainLooper()); - Runnable myRunnable = () -> instanceSocialMutableLiveData.setValue(response.body()); + InstanceSocial instanceSocial = response.body(); + InstanceSocial filtered = new InstanceSocial(); + filtered.instances = new ArrayList<>(); + if (instanceSocial != null && instanceSocial.instances != null) { + for (InstanceSocial.Instance instance : instanceSocial.instances) { + if (instance.up) { + filtered.instances.add(instance); + } + } + } + Runnable myRunnable = () -> instanceSocialMutableLiveData.setValue(filtered); mainHandler.post(myRunnable); } } catch (Exception e) { |