diff --git a/app/src/main/java/com/cappielloantonio/tempo/database/dao/RecentSearchDao.java b/app/src/main/java/com/cappielloantonio/tempo/database/dao/RecentSearchDao.java index 5041d912..b1bd6c0a 100644 --- a/app/src/main/java/com/cappielloantonio/tempo/database/dao/RecentSearchDao.java +++ b/app/src/main/java/com/cappielloantonio/tempo/database/dao/RecentSearchDao.java @@ -12,7 +12,7 @@ import java.util.List; @Dao public interface RecentSearchDao { - @Query("SELECT * FROM recent_search ORDER BY search ASC") + @Query("SELECT * FROM recent_search ORDER BY search DESC") List getRecent(); @Insert(onConflict = OnConflictStrategy.REPLACE) diff --git a/app/src/main/java/com/cappielloantonio/tempo/repository/SearchingRepository.java b/app/src/main/java/com/cappielloantonio/tempo/repository/SearchingRepository.java index 9da94a16..ea6b51ca 100644 --- a/app/src/main/java/com/cappielloantonio/tempo/repository/SearchingRepository.java +++ b/app/src/main/java/com/cappielloantonio/tempo/repository/SearchingRepository.java @@ -1,5 +1,7 @@ package com.cappielloantonio.tempo.repository; +import android.util.Log; + import androidx.annotation.NonNull; import androidx.lifecycle.MutableLiveData; @@ -100,6 +102,8 @@ public class SearchingRepository { LinkedHashSet hashSet = new LinkedHashSet<>(newSuggestions); ArrayList suggestionsWithoutDuplicates = new ArrayList<>(hashSet); + Log.d("suggestionsWithoutDuplicates", suggestionsWithoutDuplicates.toString()); + suggestions.setValue(suggestionsWithoutDuplicates); } } diff --git a/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/SearchFragment.java b/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/SearchFragment.java index 82563d59..99db6f5f 100644 --- a/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/SearchFragment.java +++ b/app/src/main/java/com/cappielloantonio/tempo/ui/fragment/SearchFragment.java @@ -4,6 +4,7 @@ import android.content.ComponentName; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -121,17 +122,11 @@ public class SearchFragment extends Fragment implements ClickCallback { bind.searchView .getEditText() .setOnEditorActionListener((textView, actionId, keyEvent) -> { - String query = bind.searchView.getText().toString(); - if (actionId == EditorInfo.IME_ACTION_DONE) { - if (isQueryValid(query)) { - search(bind.searchView.getText().toString()); - return true; - } else { - Toast.makeText(requireContext(), getString(R.string.search_info_minimum_characters), Toast.LENGTH_SHORT).show(); - return false; - } + if (isQueryValid(query)) { + search(query); + return true; } return false; @@ -147,7 +142,7 @@ public class SearchFragment extends Fragment implements ClickCallback { @Override public void onTextChanged(CharSequence charSequence, int start, int before, int count) { - if (count > 1) { + if (start + count > 1) { setSearchSuggestions(charSequence.toString()); } else { setRecentSuggestions(); @@ -247,6 +242,7 @@ public class SearchFragment extends Fragment implements ClickCallback { } private boolean isQueryValid(String query) { + Log.d(TAG, "isQueryValid()"); return !query.equals("") && query.trim().length() > 2; } diff --git a/app/src/main/res/layout/item_search_suggestion.xml b/app/src/main/res/layout/item_search_suggestion.xml index 9a644ea7..37e82576 100644 --- a/app/src/main/res/layout/item_search_suggestion.xml +++ b/app/src/main/res/layout/item_search_suggestion.xml @@ -36,8 +36,8 @@