Skip to content

Commit

Permalink
Merge branch 'mihonapp:main' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
Caio99BR authored Jul 3, 2024
2 parents 2710a7c + 5a61ca5 commit b52ad52
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,9 @@ class SourcePreferences(
Preference.appStateKey("trusted_extensions"),
emptySet(),
)

fun globalSearchFilterState() = preferenceStore.getBoolean(
Preference.appStateKey("has_filters_toggle_state"),
false,
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -102,9 +102,12 @@ fun SetIntervalDialog(
),
),
)

Spacer(Modifier.height(MaterialTheme.padding.small))
} else {
Text(
stringResource(MR.strings.manga_interval_expected_update_null),
)
}
Spacer(Modifier.height(MaterialTheme.padding.small))

if (onValueChanged != null && (isDevFlavor || isPreviewBuildType)) {
Text(stringResource(MR.strings.manga_interval_custom_amount))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.Immutable
import androidx.compose.runtime.produceState
import cafe.adriel.voyager.core.model.StateScreenModel
import cafe.adriel.voyager.core.model.screenModelScope
import eu.kanade.domain.manga.model.toDomainManga
import eu.kanade.domain.source.service.SourcePreferences
import eu.kanade.presentation.util.ioCoroutineScope
Expand All @@ -23,6 +24,7 @@ import kotlinx.coroutines.flow.update
import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import tachiyomi.core.common.preference.toggle
import tachiyomi.domain.manga.interactor.GetManga
import tachiyomi.domain.manga.interactor.NetworkToLocalManga
import tachiyomi.domain.manga.model.Manga
Expand All @@ -38,6 +40,7 @@ abstract class SearchScreenModel(
private val extensionManager: ExtensionManager = Injekt.get(),
private val networkToLocalManga: NetworkToLocalManga = Injekt.get(),
private val getManga: GetManga = Injekt.get(),
private val preferences: SourcePreferences = Injekt.get(),
) : StateScreenModel<SearchScreenModel.State>(initialState) {

private val coroutineDispatcher = Executors.newFixedThreadPool(5).asCoroutineDispatcher()
Expand All @@ -60,6 +63,14 @@ abstract class SearchScreenModel(
)
}

init {
screenModelScope.launch {
preferences.globalSearchFilterState().changes().collectLatest { state ->
mutableState.update { it.copy(onlyShowHasResults = state) }
}
}
}

@Composable
fun getManga(initialManga: Manga): androidx.compose.runtime.State<Manga> {
return produceState(initialValue = initialManga) {
Expand Down Expand Up @@ -107,7 +118,7 @@ abstract class SearchScreenModel(
}

fun toggleFilterResults() {
mutableState.update { it.copy(onlyShowHasResults = !it.onlyShowHasResults) }
preferences.globalSearchFilterState().toggle()
}

fun search() {
Expand Down
1 change: 1 addition & 0 deletions i18n/src/commonMain/moko-resources/base/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -693,6 +693,7 @@
<string name="manga_display_modified_interval_title">Set to update every</string>
<!-- "... around 2 days" -->
<string name="manga_interval_expected_update">New chapters predicted to be released in around %1$s, checking around every %2$s.</string>
<string name="manga_interval_expected_update_null">This manga is either completed, or there is no predicted release date.</string>
<string name="manga_interval_expected_update_soon">Soon</string>
<string name="manga_interval_custom_amount">Custom update frequency:</string>
<string name="chapter_downloading_progress">Downloading (%1$d/%2$d)</string>
Expand Down
4 changes: 2 additions & 2 deletions presentation-core/src/main/res/values-night/colors_tako.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
<color name="tako_onPrimary">#38294E</color>
<color name="tako_primaryContainer">#F3B375</color>
<color name="tako_onPrimaryContainer">#38294E</color>
<color name="tako_secondary">#5C4D4B</color>
<color name="tako_onSecondary">#38294E</color>
<color name="tako_secondary">#F3B375</color>
<color name="tako_onSecondary">#5C4D4B</color>
<color name="tako_secondaryContainer">#F3B375</color>
<color name="tako_onSecondaryContainer">#38294E</color>
<color name="tako_tertiary">#66577E</color>
Expand Down

0 comments on commit b52ad52

Please sign in to comment.