diff --git a/app/src/main/java/com/dragons/aurora/AuroraSuggestionProvider.java b/app/src/main/java/com/dragons/aurora/AuroraSuggestionProvider.java index f44b61c39..d1e47abb6 100644 --- a/app/src/main/java/com/dragons/aurora/AuroraSuggestionProvider.java +++ b/app/src/main/java/com/dragons/aurora/AuroraSuggestionProvider.java @@ -7,6 +7,7 @@ import android.database.Cursor; import android.database.MatrixCursor; import android.net.Uri; import android.provider.BaseColumns; +import android.support.annotation.NonNull; import android.text.TextUtils; import android.util.Log; @@ -27,12 +28,13 @@ public class AuroraSuggestionProvider extends ContentProvider { } @Override - public String getType(Uri uri) { + public String getType(@NonNull Uri uri) { return SearchManager.SUGGEST_MIME_TYPE; } @Override - public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { + public Cursor query(@NonNull Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { + MatrixCursor cursor = new MatrixCursor(new String[]{ BaseColumns._ID, SearchManager.SUGGEST_COLUMN_TEXT_1, @@ -56,17 +58,17 @@ public class AuroraSuggestionProvider extends ContentProvider { } @Override - public Uri insert(Uri uri, ContentValues values) { + public Uri insert(@NonNull Uri uri, ContentValues values) { return null; } @Override - public int delete(Uri uri, String selection, String[] selectionArgs) { + public int delete(@NonNull Uri uri, String selection, String[] selectionArgs) { return 0; } @Override - public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { + public int update(@NonNull Uri uri, ContentValues values, String selection, String[] selectionArgs) { return 0; } @@ -100,6 +102,6 @@ public class AuroraSuggestionProvider extends ContentProvider { } private Object[] constructSuggestionRow(SearchSuggestEntry entry, int id) { - return new Object[]{id, entry.getSuggestedQuery(), entry.getSuggestedQuery(), R.drawable.ic_placeholder}; + return new Object[]{id, entry.getSuggestedQuery(), entry.getSuggestedQuery(), R.drawable.ic_update}; } } diff --git a/app/src/main/java/com/dragons/aurora/fragment/SearchFragment.java b/app/src/main/java/com/dragons/aurora/fragment/SearchFragment.java index 5bc3c17a6..f9dc979ba 100644 --- a/app/src/main/java/com/dragons/aurora/fragment/SearchFragment.java +++ b/app/src/main/java/com/dragons/aurora/fragment/SearchFragment.java @@ -9,7 +9,6 @@ import android.os.Build; import android.os.Bundle; import android.preference.PreferenceManager; import android.support.annotation.NonNull; -import android.support.v4.app.Fragment; import android.support.v7.widget.DefaultItemAnimator; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; @@ -21,6 +20,11 @@ import android.view.ViewGroup; import android.widget.RelativeLayout; import android.widget.TextView; +import com.dragons.aurora.R; +import com.dragons.aurora.RecyclerItemTouchHelper; +import com.dragons.aurora.activities.SearchActivity; +import com.dragons.aurora.adapters.SearchHistoryAdapter; + import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; @@ -28,11 +32,6 @@ import java.util.HashSet; import java.util.Locale; import java.util.Set; -import com.dragons.aurora.R; -import com.dragons.aurora.RecyclerItemTouchHelper; -import com.dragons.aurora.activities.SearchActivity; -import com.dragons.aurora.adapters.SearchHistoryAdapter; - public class SearchFragment extends UtilFragment implements RecyclerItemTouchHelper.RecyclerItemTouchHelperListener { SearchView searchToolbar; @@ -49,6 +48,9 @@ public class SearchFragment extends UtilFragment implements RecyclerItemTouchHel recyclerView = view.findViewById(R.id.searchHistory); emptyView = view.findViewById(R.id.emptyView); + TextView clearAll = view.findViewById(R.id.clearAll); + clearAll.setOnClickListener(v -> clearAll()); + RelativeLayout search_layout = view.findViewById(R.id.search_layout); search_layout.setOnClickListener(v -> { searchToolbar.setFocusable(true); @@ -140,7 +142,7 @@ public class SearchFragment extends UtilFragment implements RecyclerItemTouchHel emptyView.setVisibility(View.GONE); recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); recyclerView.setItemAnimator(new DefaultItemAnimator()); - recyclerView.setAdapter(new SearchHistoryAdapter(listHistory,getActivity())); + recyclerView.setAdapter(new SearchHistoryAdapter(listHistory, getActivity())); new ItemTouchHelper( new RecyclerItemTouchHelper(0, ItemTouchHelper.LEFT, this)) .attachToRecyclerView(recyclerView); @@ -171,6 +173,15 @@ public class SearchFragment extends UtilFragment implements RecyclerItemTouchHel return listHistory; } + private void clearAll() { + setHistory.clear(); + PreferenceManager.getDefaultSharedPreferences(getActivity()) + .edit() + .putStringSet("SEARCH_HISTORY", setHistory) + .apply(); + setupSearchHistory(); + } + @Override public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction, int position) { if (viewHolder instanceof SearchHistoryAdapter.MyViewHolder) { diff --git a/app/src/main/res/drawable/outline_bg.xml b/app/src/main/res/drawable/outline_bg.xml index fa8d7142d..7d24623af 100644 --- a/app/src/main/res/drawable/outline_bg.xml +++ b/app/src/main/res/drawable/outline_bg.xml @@ -3,7 +3,7 @@ android:shape="rectangle"> - + diff --git a/app/src/main/res/layout/fragment_search.xml b/app/src/main/res/layout/fragment_search.xml index 78b0240f2..5217418c4 100644 --- a/app/src/main/res/layout/fragment_search.xml +++ b/app/src/main/res/layout/fragment_search.xml @@ -1,5 +1,4 @@ - + android:textColor="?android:attr/textColorPrimary" + android:textSize="18sp" /> - + android:layout_margin="12dp" + android:background="@drawable/outline_bg" + android:clickable="true" + android:focusable="true" + android:nestedScrollingEnabled="false"> - + android:layout_height="wrap_content" + app:closeIcon="@null" + app:queryBackground="@android:color/transparent" + app:queryHint="Search Apps" + app:searchIcon="@drawable/ic_search" /> + - - - - - + android:orientation="horizontal" + android:weightSum="10"> - + + + + + + android:layout_margin="12dp" + android:animateLayoutChanges="true" + android:background="@drawable/outline_bg" + android:padding="5dp"> - + + + \ No newline at end of file diff --git a/app/src/main/res/layout/history_item.xml b/app/src/main/res/layout/history_item.xml index e2c352a78..84d76243f 100644 --- a/app/src/main/res/layout/history_item.xml +++ b/app/src/main/res/layout/history_item.xml @@ -7,9 +7,9 @@ + android:layout_height="50dp" + android:background="@color/colorRed" + android:padding="5dp"> + android:layout_height="50dp" + android:background="?android:attr/colorPrimary" + android:paddingEnd="5dp" + android:paddingStart="5dp" + android:paddingTop="5dp"> + android:src="@drawable/ic_search" /> \ No newline at end of file diff --git a/app/src/main/res/values-v23/style.xml b/app/src/main/res/values-v23/style.xml index e102d362c..397f3faa4 100755 --- a/app/src/main/res/values-v23/style.xml +++ b/app/src/main/res/values-v23/style.xml @@ -4,9 +4,6 @@