diff --git a/src/org/thoughtcrime/securesms/giph/net/GiphyLoader.java b/src/org/thoughtcrime/securesms/giph/net/GiphyLoader.java index 3f6d02fe15..9ec89048c1 100644 --- a/src/org/thoughtcrime/securesms/giph/net/GiphyLoader.java +++ b/src/org/thoughtcrime/securesms/giph/net/GiphyLoader.java @@ -42,7 +42,7 @@ public abstract class GiphyLoader extends AsyncLoader> { return loadPage(0); } - public List loadPage(int offset) { + public @NonNull List loadPage(int offset) { try { String url; @@ -56,9 +56,12 @@ public abstract class GiphyLoader extends AsyncLoader> { throw new IOException("Unexpected code " + response); } - GiphyResponse giphyResponse = JsonUtils.fromJson(response.body().byteStream(), GiphyResponse.class); + GiphyResponse giphyResponse = JsonUtils.fromJson(response.body().byteStream(), GiphyResponse.class); + List results = giphyResponse.getData(); + + if (results == null) return new LinkedList<>(); + else return results; - return giphyResponse.getData(); } catch (IOException e) { Log.w(TAG, e); return new LinkedList<>(); diff --git a/src/org/thoughtcrime/securesms/giph/ui/GiphyAdapter.java b/src/org/thoughtcrime/securesms/giph/ui/GiphyAdapter.java index b9739050d9..af8ddc8cb5 100644 --- a/src/org/thoughtcrime/securesms/giph/ui/GiphyAdapter.java +++ b/src/org/thoughtcrime/securesms/giph/ui/GiphyAdapter.java @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.giph.ui; import android.content.Context; import android.graphics.drawable.ColorDrawable; +import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; @@ -106,7 +107,7 @@ public class GiphyAdapter extends RecyclerView.Adapter images) { + public void setImages(@NonNull List images) { this.images = images; notifyDataSetChanged(); } diff --git a/src/org/thoughtcrime/securesms/giph/ui/GiphyFragment.java b/src/org/thoughtcrime/securesms/giph/ui/GiphyFragment.java index b465b43914..c98b6cd812 100644 --- a/src/org/thoughtcrime/securesms/giph/ui/GiphyFragment.java +++ b/src/org/thoughtcrime/securesms/giph/ui/GiphyFragment.java @@ -2,6 +2,7 @@ package org.thoughtcrime.securesms.giph.ui; import android.os.AsyncTask; import android.os.Bundle; +import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.app.LoaderManager; @@ -63,11 +64,11 @@ public abstract class GiphyFragment extends Fragment implements LoaderManager.Lo } @Override - public void onLoadFinished(Loader> loader, List data) { + public void onLoadFinished(Loader> loader, @NonNull List data) { this.loadingProgress.setVisibility(View.GONE); - if (data == null || data.isEmpty()) noResultsView.setVisibility(View.VISIBLE); - else noResultsView.setVisibility(View.GONE); + if (data.isEmpty()) noResultsView.setVisibility(View.VISIBLE); + else noResultsView.setVisibility(View.GONE); this.giphyAdapter.setImages(data); }