Update explore navigation

This commit is contained in:
Koitharu
2023-11-12 13:15:30 +02:00
parent b093a885c9
commit b928c4123c
7 changed files with 23 additions and 4 deletions

View File

@@ -1,6 +1,7 @@
package org.koitharu.kotatsu.explore.ui
import android.content.DialogInterface
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.MenuItem
@@ -46,6 +47,7 @@ import org.koitharu.kotatsu.parsers.model.MangaSource
import org.koitharu.kotatsu.search.ui.MangaListActivity
import org.koitharu.kotatsu.settings.SettingsActivity
import org.koitharu.kotatsu.settings.newsources.NewSourcesDialogFragment
import org.koitharu.kotatsu.settings.sources.catalog.SourcesCatalogActivity
import org.koitharu.kotatsu.suggestions.ui.SuggestionsActivity
import javax.inject.Inject
@@ -109,7 +111,7 @@ class ExploreFragment :
}
override fun onListHeaderClick(item: ListHeader, view: View) {
startActivity(SettingsActivity.newManageSourcesIntent(view.context))
startActivity(Intent(view.context, SourcesCatalogActivity::class.java))
}
override fun onPrimaryButtonClick(tipView: TipView) {

View File

@@ -6,6 +6,7 @@ import android.view.MenuInflater
import android.view.MenuItem
import androidx.core.view.MenuProvider
import org.koitharu.kotatsu.R
import org.koitharu.kotatsu.settings.SettingsActivity
class ExploreMenuProvider(
private val context: Context,
@@ -23,6 +24,11 @@ class ExploreMenuProvider(
true
}
R.id.action_manage -> {
context.startActivity(SettingsActivity.newManageSourcesIntent(context))
true
}
else -> false
}
}

View File

@@ -137,7 +137,7 @@ class ExploreViewModel @Inject constructor(
result += RecommendationsItem(recommendation)
}
if (sources.isNotEmpty()) {
result += ListHeader(R.string.remote_sources, R.string.manage)
result += ListHeader(R.string.remote_sources, R.string.catalog)
if (newSources.isNotEmpty()) {
result += TipModel(
key = TIP_NEW_SOURCES,

View File

@@ -86,7 +86,7 @@ class SourcesManageFragment :
override fun onResume() {
super.onResume()
activity?.setTitle(R.string.remote_sources)
activity?.setTitle(R.string.manage_sources)
}
override fun onDestroyView() {

View File

@@ -31,6 +31,7 @@ class SourcesCatalogViewModel @Inject constructor(
) : BaseViewModel() {
private val lifecycle = RetainedLifecycleImpl()
private var searchQuery: String = ""
val onActionDone = MutableEventFlow<ReversibleAction>()
val contentType = MutableStateFlow(ContentType.entries.first())
val locales = getLocalesImpl()
@@ -40,7 +41,9 @@ class SourcesCatalogViewModel @Inject constructor(
locale,
contentType,
) { lc, type ->
listProducerFactory.create(lc, type, lifecycle)
listProducerFactory.create(lc, type, lifecycle).also {
it.setQuery(searchQuery)
}
}.stateIn(viewModelScope, SharingStarted.Eagerly, null)
val content = listProducer.flatMapLatest {
@@ -53,6 +56,7 @@ class SourcesCatalogViewModel @Inject constructor(
}
fun performSearch(query: String) {
searchQuery = query
listProducer.value?.setQuery(query)
}