From 2175ba2d8999fe92c634f553371c49a0b5b8cc5e Mon Sep 17 00:00:00 2001 From: Shridhar Goel <35566748+ShridharGoel@users.noreply.github.com> Date: Thu, 13 Dec 2018 18:34:29 +0530 Subject: [PATCH] Fix #2104 by removing delete recent searches button when list is empty (#2105) * Fix #2104 by removing delete recent searches button when list is empty * Changed text to 'No recent searches' when the list is empty --- .../recentsearches/RecentSearchesFragment.java | 16 ++++++++++++++++ .../main/res/layout/fragment_search_history.xml | 1 + app/src/main/res/values/strings.xml | 1 + 3 files changed, 18 insertions(+) diff --git a/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearchesFragment.java b/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearchesFragment.java index 173d93129..a3ca537cf 100644 --- a/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearchesFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/explore/recentsearches/RecentSearchesFragment.java @@ -8,6 +8,7 @@ import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.ListView; +import android.widget.TextView; import android.widget.Toast; import java.util.List; @@ -31,6 +32,8 @@ public class RecentSearchesFragment extends CommonsDaggerSupportFragment { ArrayAdapter adapter; @BindView(R.id.recent_searches_delete_button) ImageView recent_searches_delete_button; + @BindView(R.id.recent_searches_text_view) + TextView recent_searches_text_view; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, @@ -38,10 +41,18 @@ public class RecentSearchesFragment extends CommonsDaggerSupportFragment { View rootView = inflater.inflate(R.layout.fragment_search_history, container, false); ButterKnife.bind(this, rootView); recentSearches = recentSearchesDao.recentSearches(10); + + if(recentSearches.isEmpty()) { + recent_searches_delete_button.setVisibility(View.GONE); + recent_searches_text_view.setText(R.string.no_recent_searches); + } + recent_searches_delete_button.setOnClickListener(v -> new AlertDialog.Builder(getContext()) .setMessage(getString(R.string.delete_recent_searches_dialog)) .setPositiveButton(android.R.string.yes, (dialog, which) -> { recentSearchesDao.deleteAll(recentSearches); + recent_searches_delete_button.setVisibility(View.GONE); + recent_searches_text_view.setText(R.string.no_recent_searches); Toast.makeText(getContext(),getString(R.string.search_history_deleted),Toast.LENGTH_SHORT).show(); recentSearches = recentSearchesDao.recentSearches(10); adapter = new ArrayAdapter(getContext(),R.layout.item_recent_searches, recentSearches); @@ -79,5 +90,10 @@ public class RecentSearchesFragment extends CommonsDaggerSupportFragment { adapter = new ArrayAdapter(getContext(),R.layout.item_recent_searches, recentSearches); recentSearchesList.setAdapter(adapter); adapter.notifyDataSetChanged(); + + if(!recentSearches.isEmpty()) { + recent_searches_delete_button.setVisibility(View.VISIBLE); + recent_searches_text_view.setText(R.string.search_recent_header); + } } } diff --git a/app/src/main/res/layout/fragment_search_history.xml b/app/src/main/res/layout/fragment_search_history.xml index 74698f763..2ac2752b4 100644 --- a/app/src/main/res/layout/fragment_search_history.xml +++ b/app/src/main/res/layout/fragment_search_history.xml @@ -17,6 +17,7 @@ android:layout_height="wrap_content"> Error fetching nearby places. + Add description + No recent searches Are you sure you want to clear your search history? Search history deleted Nominate For Deletion