Commit 3a35797a authored by Varun Patil's avatar Varun Patil

Ensure latest query is shown in explore fragment

parent 4c971757
...@@ -49,6 +49,8 @@ public class ExploreFragment extends Fragment { ...@@ -49,6 +49,8 @@ public class ExploreFragment extends Fragment {
private FeedAdapter eventsAdapter; private FeedAdapter eventsAdapter;
private UserAdapter userAdapter; private UserAdapter userAdapter;
private String currentQuery = null;
public ExploreFragment() { public ExploreFragment() {
// Required empty public constructor // Required empty public constructor
} }
...@@ -124,17 +126,25 @@ public class ExploreFragment extends Fragment { ...@@ -124,17 +126,25 @@ public class ExploreFragment extends Fragment {
return inflater.inflate(R.layout.fragment_explore, container, false); return inflater.inflate(R.layout.fragment_explore, container, false);
} }
public void doSearch(String query) { public void doSearch(final String query) {
if (getActivity() == null || getView() == null) return; if (getActivity() == null || getView() == null) return;
// Show loading spinner // Show loading spinner
getView().findViewById(R.id.loadingPanel).setVisibility(View.VISIBLE); getView().findViewById(R.id.loadingPanel).setVisibility(View.VISIBLE);
// Set the lastest query
currentQuery = query;
// Make request // Make request
RetrofitInterface retrofitInterface = ((MainActivity) getActivity()).getRetrofitInterface(); RetrofitInterface retrofitInterface = ((MainActivity) getActivity()).getRetrofitInterface();
retrofitInterface.search(sessionId, query).enqueue(new EmptyCallback<ExploreResponse>() { retrofitInterface.search(sessionId, query).enqueue(new EmptyCallback<ExploreResponse>() {
@Override @Override
public void onResponse(Call<ExploreResponse> call, Response<ExploreResponse> response) { public void onResponse(Call<ExploreResponse> call, Response<ExploreResponse> response) {
// Check if we already have a new query pending
if (!currentQuery.equals(query)) {
return;
}
// Get data // Get data
bodies = response.body().getBodies(); bodies = response.body().getBodies();
events = response.body().getEvents(); events = response.body().getEvents();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment