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
This commit is contained in:
Shridhar Goel 2018-12-13 18:34:29 +05:30 committed by Adam Jones
parent 2cd485359d
commit 2175ba2d89
3 changed files with 18 additions and 0 deletions

View file

@ -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<String>(getContext(),R.layout.item_recent_searches, recentSearches);
@ -79,5 +90,10 @@ public class RecentSearchesFragment extends CommonsDaggerSupportFragment {
adapter = new ArrayAdapter<String>(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);
}
}
}

View file

@ -17,6 +17,7 @@
android:layout_height="wrap_content">
<TextView
android:id="@+id/recent_searches_text_view"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_gravity="start"

View file

@ -343,6 +343,7 @@
<string name="error_fetching_nearby_places">Error fetching nearby places.</string>
<string name="add_description">+ Add description</string>
<string name="no_recent_searches">No recent searches</string>
<string name="delete_recent_searches_dialog">Are you sure you want to clear your search history?</string>
<string name="search_history_deleted">Search history deleted</string>
<string name="nominate_delete">Nominate For Deletion</string>