Fix search issue
This commit is contained in:
@@ -164,7 +164,7 @@ dependencies {
|
|||||||
implementation("com.github.topjohnwu.libsu:core:5.0.5")
|
implementation("com.github.topjohnwu.libsu:core:5.0.5")
|
||||||
|
|
||||||
//Love <3
|
//Love <3
|
||||||
implementation("com.gitlab.AuroraOSS:gplayapi:3.2.0")
|
implementation("com.gitlab.AuroraOSS:gplayapi:3.2.1")
|
||||||
|
|
||||||
//Browser
|
//Browser
|
||||||
implementation("androidx.browser:browser:1.6.0")
|
implementation("androidx.browser:browser:1.6.0")
|
||||||
|
|||||||
@@ -20,15 +20,12 @@
|
|||||||
package com.aurora.store.viewmodel.search
|
package com.aurora.store.viewmodel.search
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import android.content.Context
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.aurora.extensions.flushAndAdd
|
import com.aurora.extensions.flushAndAdd
|
||||||
import com.aurora.extensions.shouldUseWebAPI
|
|
||||||
import com.aurora.gplayapi.data.models.AuthData
|
import com.aurora.gplayapi.data.models.AuthData
|
||||||
import com.aurora.gplayapi.data.models.SearchBundle
|
import com.aurora.gplayapi.data.models.SearchBundle
|
||||||
import com.aurora.gplayapi.helpers.SearchHelper
|
|
||||||
import com.aurora.gplayapi.helpers.WebSearchHelper
|
import com.aurora.gplayapi.helpers.WebSearchHelper
|
||||||
import com.aurora.store.data.RequestState
|
import com.aurora.store.data.RequestState
|
||||||
import com.aurora.store.data.network.HttpClient
|
import com.aurora.store.data.network.HttpClient
|
||||||
@@ -45,11 +42,9 @@ class SearchResultViewModel(application: Application) : BaseAndroidViewModel(app
|
|||||||
.with(application)
|
.with(application)
|
||||||
.getAuthData()
|
.getAuthData()
|
||||||
|
|
||||||
private val searchHelper: SearchHelper = SearchHelper(authData)
|
private val searchHelper = WebSearchHelper(authData)
|
||||||
.using(HttpClient.getPreferredClient())
|
.using(HttpClient.getPreferredClient())
|
||||||
|
|
||||||
private val webSearchHelper = WebSearchHelper()
|
|
||||||
|
|
||||||
val liveData: MutableLiveData<SearchBundle> = MutableLiveData()
|
val liveData: MutableLiveData<SearchBundle> = MutableLiveData()
|
||||||
|
|
||||||
private var searchBundle: SearchBundle = SearchBundle()
|
private var searchBundle: SearchBundle = SearchBundle()
|
||||||
@@ -74,17 +69,7 @@ class SearchResultViewModel(application: Application) : BaseAndroidViewModel(app
|
|||||||
private fun search(
|
private fun search(
|
||||||
query: String
|
query: String
|
||||||
): SearchBundle {
|
): SearchBundle {
|
||||||
return if ((getApplication() as Context).shouldUseWebAPI()) {
|
return searchHelper.searchResults(query)
|
||||||
val result = webSearchHelper.searchResults(query)
|
|
||||||
val searchBundle = SearchBundle().apply {
|
|
||||||
this.id = 100
|
|
||||||
this.query = query
|
|
||||||
appList = result.values.flatten().toSet().toMutableList()
|
|
||||||
}
|
|
||||||
return searchBundle
|
|
||||||
} else {
|
|
||||||
searchHelper.searchResults(query)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Synchronized
|
@Synchronized
|
||||||
|
|||||||
@@ -20,15 +20,12 @@
|
|||||||
package com.aurora.store.viewmodel.search
|
package com.aurora.store.viewmodel.search
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import android.content.Context
|
|
||||||
import androidx.lifecycle.AndroidViewModel
|
import androidx.lifecycle.AndroidViewModel
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.aurora.extensions.shouldUseWebAPI
|
|
||||||
import com.aurora.gplayapi.SearchSuggestEntry
|
import com.aurora.gplayapi.SearchSuggestEntry
|
||||||
import com.aurora.gplayapi.data.models.AuthData
|
import com.aurora.gplayapi.data.models.AuthData
|
||||||
import com.aurora.gplayapi.helpers.SearchHelper
|
import com.aurora.gplayapi.helpers.WebSearchHelper
|
||||||
import com.aurora.gplayapi.helpers.WebSearchSuggestionHelper
|
|
||||||
import com.aurora.store.data.network.HttpClient
|
import com.aurora.store.data.network.HttpClient
|
||||||
import com.aurora.store.data.providers.AuthProvider
|
import com.aurora.store.data.providers.AuthProvider
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
@@ -40,11 +37,9 @@ class SearchSuggestionViewModel(application: Application) : AndroidViewModel(app
|
|||||||
.with(application)
|
.with(application)
|
||||||
.getAuthData()
|
.getAuthData()
|
||||||
|
|
||||||
private val searchHelper: SearchHelper = SearchHelper(authData)
|
private val searchHelper = WebSearchHelper(authData)
|
||||||
.using(HttpClient.getPreferredClient())
|
.using(HttpClient.getPreferredClient())
|
||||||
|
|
||||||
private val webSearchSuggestionHelper = WebSearchSuggestionHelper()
|
|
||||||
|
|
||||||
val liveSearchSuggestions: MutableLiveData<List<SearchSuggestEntry>> = MutableLiveData()
|
val liveSearchSuggestions: MutableLiveData<List<SearchSuggestEntry>> = MutableLiveData()
|
||||||
|
|
||||||
fun observeStreamBundles(query: String) {
|
fun observeStreamBundles(query: String) {
|
||||||
@@ -56,10 +51,6 @@ class SearchSuggestionViewModel(application: Application) : AndroidViewModel(app
|
|||||||
private fun getSearchSuggestions(
|
private fun getSearchSuggestions(
|
||||||
query: String
|
query: String
|
||||||
): List<SearchSuggestEntry> {
|
): List<SearchSuggestEntry> {
|
||||||
return if ((getApplication() as Context).shouldUseWebAPI()) {
|
return searchHelper.searchSuggestions(query)
|
||||||
webSearchSuggestionHelper.searchSuggestions(query)
|
|
||||||
} else {
|
|
||||||
searchHelper.searchSuggestions(query)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user