Replace remaining Android-specific strings

Also renaming the helper composables so it's a bit easier to find/replace everything
in forks.
This commit is contained in:
arkon
2023-11-18 19:41:33 -05:00
parent 46e734fc8e
commit 0d1bced122
165 changed files with 1179 additions and 1167 deletions
@@ -36,7 +36,7 @@ import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.download.model.Download
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.IconButtonTokens
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.util.secondaryItemAlpha
enum class ChapterDownloadAction {
@@ -99,7 +99,7 @@ private fun NotDownloadedIndicator(
) {
Icon(
painter = painterResource(R.drawable.ic_download_chapter_24dp),
contentDescription = localize(MR.strings.manga_download),
contentDescription = stringResource(MR.strings.manga_download),
modifier = Modifier.size(IndicatorSize),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
@@ -157,14 +157,14 @@ private fun DownloadingIndicator(
}
DropdownMenu(expanded = isMenuExpanded, onDismissRequest = { isMenuExpanded = false }) {
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_start_downloading_now)) },
text = { Text(text = stringResource(MR.strings.action_start_downloading_now)) },
onClick = {
onClick(ChapterDownloadAction.START_NOW)
isMenuExpanded = false
},
)
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_cancel)) },
text = { Text(text = stringResource(MR.strings.action_cancel)) },
onClick = {
onClick(ChapterDownloadAction.CANCEL)
isMenuExpanded = false
@@ -205,7 +205,7 @@ private fun DownloadedIndicator(
)
DropdownMenu(expanded = isMenuExpanded, onDismissRequest = { isMenuExpanded = false }) {
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_delete)) },
text = { Text(text = stringResource(MR.strings.action_delete)) },
onClick = {
onClick(ChapterDownloadAction.DELETE)
isMenuExpanded = false
@@ -233,7 +233,7 @@ private fun ErrorIndicator(
) {
Icon(
imageVector = Icons.Outlined.ErrorOutline,
contentDescription = localize(MR.strings.chapter_error),
contentDescription = stringResource(MR.strings.chapter_error),
modifier = Modifier.size(IndicatorSize),
tint = MaterialTheme.colorScheme.error,
)
@@ -13,8 +13,8 @@ import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.SecondaryItemAlpha
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.localizePlural
import tachiyomi.presentation.core.i18n.pluralStringResource
import tachiyomi.presentation.core.i18n.stringResource
@Composable
fun ChapterHeader(
@@ -35,9 +35,9 @@ fun ChapterHeader(
) {
Text(
text = if (chapterCount == null) {
localize(MR.strings.chapters)
stringResource(MR.strings.chapters)
} else {
localizePlural(MR.plurals.manga_num_chapters, count = chapterCount, chapterCount)
pluralStringResource(MR.plurals.manga_num_chapters, count = chapterCount, chapterCount)
},
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onBackground,
@@ -54,7 +54,7 @@ private fun MissingChaptersWarning(count: Int) {
}
Text(
text = localizePlural(MR.plurals.missing_chapters, count = count, count),
text = pluralStringResource(MR.plurals.missing_chapters, count = count, count),
maxLines = 1,
overflow = TextOverflow.Ellipsis,
style = MaterialTheme.typography.bodySmall,
@@ -29,7 +29,6 @@ import androidx.compose.material.icons.outlined.BookmarkRemove
import androidx.compose.material.icons.outlined.Delete
import androidx.compose.material.icons.outlined.DoneAll
import androidx.compose.material.icons.outlined.Download
import androidx.compose.material.icons.outlined.Label
import androidx.compose.material.icons.outlined.RemoveDone
import androidx.compose.material.ripple.rememberRipple
import androidx.compose.material3.Icon
@@ -59,7 +58,7 @@ import kotlinx.coroutines.delay
import kotlinx.coroutines.isActive
import kotlinx.coroutines.launch
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import kotlin.time.Duration.Companion.seconds
@Composable
@@ -108,7 +107,7 @@ fun MangaBottomActionMenu(
) {
if (onBookmarkClicked != null) {
Button(
title = localize(MR.strings.action_bookmark),
title = stringResource(MR.strings.action_bookmark),
icon = Icons.Outlined.BookmarkAdd,
toConfirm = confirm[0],
onLongClick = { onLongClickItem(0) },
@@ -117,7 +116,7 @@ fun MangaBottomActionMenu(
}
if (onRemoveBookmarkClicked != null) {
Button(
title = localize(MR.strings.action_remove_bookmark),
title = stringResource(MR.strings.action_remove_bookmark),
icon = Icons.Outlined.BookmarkRemove,
toConfirm = confirm[1],
onLongClick = { onLongClickItem(1) },
@@ -126,7 +125,7 @@ fun MangaBottomActionMenu(
}
if (onMarkAsReadClicked != null) {
Button(
title = localize(MR.strings.action_mark_as_read),
title = stringResource(MR.strings.action_mark_as_read),
icon = Icons.Outlined.DoneAll,
toConfirm = confirm[2],
onLongClick = { onLongClickItem(2) },
@@ -135,7 +134,7 @@ fun MangaBottomActionMenu(
}
if (onMarkAsUnreadClicked != null) {
Button(
title = localize(MR.strings.action_mark_as_unread),
title = stringResource(MR.strings.action_mark_as_unread),
icon = Icons.Outlined.RemoveDone,
toConfirm = confirm[3],
onLongClick = { onLongClickItem(3) },
@@ -144,7 +143,7 @@ fun MangaBottomActionMenu(
}
if (onMarkPreviousAsReadClicked != null) {
Button(
title = localize(MR.strings.action_mark_previous_as_read),
title = stringResource(MR.strings.action_mark_previous_as_read),
icon = ImageVector.vectorResource(R.drawable.ic_done_prev_24dp),
toConfirm = confirm[4],
onLongClick = { onLongClickItem(4) },
@@ -153,7 +152,7 @@ fun MangaBottomActionMenu(
}
if (onDownloadClicked != null) {
Button(
title = localize(MR.strings.action_download),
title = stringResource(MR.strings.action_download),
icon = Icons.Outlined.Download,
toConfirm = confirm[5],
onLongClick = { onLongClickItem(5) },
@@ -162,7 +161,7 @@ fun MangaBottomActionMenu(
}
if (onDeleteClicked != null) {
Button(
title = localize(MR.strings.action_delete),
title = stringResource(MR.strings.action_delete),
icon = Icons.Outlined.Delete,
toConfirm = confirm[6],
onLongClick = { onLongClickItem(6) },
@@ -259,21 +258,21 @@ fun LibraryBottomActionMenu(
.padding(horizontal = 8.dp, vertical = 12.dp),
) {
Button(
title = localize(MR.strings.action_move_category),
title = stringResource(MR.strings.action_move_category),
icon = Icons.AutoMirrored.Outlined.Label,
toConfirm = confirm[0],
onLongClick = { onLongClickItem(0) },
onClick = onChangeCategoryClicked,
)
Button(
title = localize(MR.strings.action_mark_as_read),
title = stringResource(MR.strings.action_mark_as_read),
icon = Icons.Outlined.DoneAll,
toConfirm = confirm[1],
onLongClick = { onLongClickItem(1) },
onClick = onMarkAsReadClicked,
)
Button(
title = localize(MR.strings.action_mark_as_unread),
title = stringResource(MR.strings.action_mark_as_unread),
icon = Icons.Outlined.RemoveDone,
toConfirm = confirm[2],
onLongClick = { onLongClickItem(2) },
@@ -282,7 +281,7 @@ fun LibraryBottomActionMenu(
if (onDownloadClicked != null) {
var downloadExpanded by remember { mutableStateOf(false) }
Button(
title = localize(MR.strings.action_download),
title = stringResource(MR.strings.action_download),
icon = Icons.Outlined.Download,
toConfirm = confirm[3],
onLongClick = { onLongClickItem(3) },
@@ -297,7 +296,7 @@ fun LibraryBottomActionMenu(
}
}
Button(
title = localize(MR.strings.action_delete),
title = stringResource(MR.strings.action_delete),
icon = Icons.Outlined.Delete,
toConfirm = confirm[4],
onLongClick = { onLongClickItem(4) },
@@ -52,7 +52,7 @@ import tachiyomi.domain.library.service.LibraryPreferences
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.ReadItemAlpha
import tachiyomi.presentation.core.components.material.SecondaryItemAlpha
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.util.selectedBackground
import kotlin.math.absoluteValue
@@ -143,7 +143,7 @@ fun MangaChapterListItem(
if (!read) {
Icon(
imageVector = Icons.Filled.Circle,
contentDescription = localize(MR.strings.unread),
contentDescription = stringResource(MR.strings.unread),
modifier = Modifier
.height(8.dp)
.padding(end = 4.dp),
@@ -153,7 +153,7 @@ fun MangaChapterListItem(
if (bookmark) {
Icon(
imageVector = Icons.Filled.Bookmark,
contentDescription = localize(MR.strings.action_filter_bookmarked),
contentDescription = stringResource(MR.strings.action_filter_bookmarked),
modifier = Modifier
.sizeIn(maxHeight = with(LocalDensity.current) { textHeight.toDp() - 2.dp }),
tint = MaterialTheme.colorScheme.primary,
@@ -51,7 +51,7 @@ import kotlinx.collections.immutable.persistentListOf
import tachiyomi.domain.manga.model.Manga
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.Scaffold
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.util.clickableNoIndication
@Composable
@@ -85,7 +85,7 @@ fun MangaCoverDialog(
IconButton(onClick = onDismissRequest) {
Icon(
imageVector = Icons.Outlined.Close,
contentDescription = localize(MR.strings.action_close),
contentDescription = stringResource(MR.strings.action_close),
)
}
}
@@ -94,12 +94,12 @@ fun MangaCoverDialog(
AppBarActions(
actions = persistentListOf(
AppBar.Action(
title = localize(MR.strings.action_share),
title = stringResource(MR.strings.action_share),
icon = Icons.Outlined.Share,
onClick = onShareClick,
),
AppBar.Action(
title = localize(MR.strings.action_save),
title = stringResource(MR.strings.action_save),
icon = Icons.Outlined.Save,
onClick = onSaveClick,
),
@@ -119,7 +119,7 @@ fun MangaCoverDialog(
) {
Icon(
imageVector = Icons.Outlined.Edit,
contentDescription = localize(MR.strings.action_edit_cover),
contentDescription = stringResource(MR.strings.action_edit_cover),
)
}
DropdownMenu(
@@ -128,14 +128,14 @@ fun MangaCoverDialog(
offset = DpOffset(8.dp, 0.dp),
) {
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_edit)) },
text = { Text(text = stringResource(MR.strings.action_edit)) },
onClick = {
onEditClick(EditCoverAction.EDIT)
expanded = false
},
)
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_delete)) },
text = { Text(text = stringResource(MR.strings.action_delete)) },
onClick = {
onEditClick(EditCoverAction.DELETE)
expanded = false
@@ -18,7 +18,7 @@ import kotlinx.collections.immutable.toImmutableList
import tachiyomi.domain.manga.interactor.FetchInterval
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.WheelTextPicker
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
@Composable
fun DeleteChaptersDialog(
@@ -29,7 +29,7 @@ fun DeleteChaptersDialog(
onDismissRequest = onDismissRequest,
dismissButton = {
TextButton(onClick = onDismissRequest) {
Text(text = localize(MR.strings.action_cancel))
Text(text = stringResource(MR.strings.action_cancel))
}
},
confirmButton = {
@@ -39,14 +39,14 @@ fun DeleteChaptersDialog(
onConfirm()
},
) {
Text(text = localize(MR.strings.action_ok))
Text(text = stringResource(MR.strings.action_ok))
}
},
title = {
Text(text = localize(MR.strings.are_you_sure))
Text(text = stringResource(MR.strings.are_you_sure))
},
text = {
Text(text = localize(MR.strings.confirm_delete_chapters))
Text(text = stringResource(MR.strings.confirm_delete_chapters))
},
)
}
@@ -61,7 +61,7 @@ fun SetIntervalDialog(
AlertDialog(
onDismissRequest = onDismissRequest,
title = { Text(text = localize(MR.strings.manga_modify_calculated_interval_title)) },
title = { Text(text = stringResource(MR.strings.manga_modify_calculated_interval_title)) },
text = {
BoxWithConstraints(
modifier = Modifier.fillMaxWidth(),
@@ -71,7 +71,7 @@ fun SetIntervalDialog(
val items = (0..FetchInterval.MAX_INTERVAL)
.map {
if (it == 0) {
localize(MR.strings.label_default)
stringResource(MR.strings.label_default)
} else {
it.toString()
}
@@ -87,7 +87,7 @@ fun SetIntervalDialog(
},
dismissButton = {
TextButton(onClick = onDismissRequest) {
Text(text = localize(MR.strings.action_cancel))
Text(text = stringResource(MR.strings.action_cancel))
}
},
confirmButton = {
@@ -95,7 +95,7 @@ fun SetIntervalDialog(
onValueChanged(selectedInterval)
onDismissRequest()
}) {
Text(text = localize(MR.strings.action_ok))
Text(text = stringResource(MR.strings.action_ok))
}
},
)
@@ -81,8 +81,8 @@ import tachiyomi.domain.manga.model.Manga
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.TextButton
import tachiyomi.presentation.core.components.material.padding
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.localizePlural
import tachiyomi.presentation.core.i18n.pluralStringResource
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.util.clickableNoIndication
import tachiyomi.presentation.core.util.secondaryItemAlpha
import kotlin.math.absoluteValue
@@ -179,9 +179,9 @@ fun MangaActionRow(
Row(modifier = modifier.padding(start = 16.dp, top = 8.dp, end = 16.dp)) {
MangaActionButton(
title = if (favorite) {
localize(MR.strings.in_library)
stringResource(MR.strings.in_library)
} else {
localize(MR.strings.add_to_library)
stringResource(MR.strings.add_to_library)
},
icon = if (favorite) Icons.Filled.Favorite else Icons.Outlined.FavoriteBorder,
color = if (favorite) MaterialTheme.colorScheme.primary else defaultActionButtonColor,
@@ -190,7 +190,7 @@ fun MangaActionRow(
)
if (onEditIntervalClicked != null && fetchInterval != null) {
MangaActionButton(
title = localizePlural(
title = pluralStringResource(
MR.plurals.day,
count = fetchInterval.absoluteValue,
fetchInterval.absoluteValue,
@@ -203,9 +203,9 @@ fun MangaActionRow(
if (onTrackingClicked != null) {
MangaActionButton(
title = if (trackingCount == 0) {
localize(MR.strings.manga_tracking_tab)
stringResource(MR.strings.manga_tracking_tab)
} else {
localizePlural(MR.plurals.num_trackers, count = trackingCount, trackingCount)
pluralStringResource(MR.plurals.num_trackers, count = trackingCount, trackingCount)
},
icon = if (trackingCount == 0) Icons.Outlined.Sync else Icons.Outlined.Done,
color = if (trackingCount == 0) defaultActionButtonColor else MaterialTheme.colorScheme.primary,
@@ -214,7 +214,7 @@ fun MangaActionRow(
}
if (onWebViewClicked != null) {
MangaActionButton(
title = localize(MR.strings.action_web_view),
title = stringResource(MR.strings.action_web_view),
icon = Icons.Outlined.Public,
color = defaultActionButtonColor,
onClick = onWebViewClicked,
@@ -238,7 +238,7 @@ fun ExpandableMangaDescription(
mutableStateOf(defaultExpandState)
}
val desc =
description.takeIf { !it.isNullOrBlank() } ?: localize(MR.strings.description_placeholder)
description.takeIf { !it.isNullOrBlank() } ?: stringResource(MR.strings.description_placeholder)
val trimmedDescription = remember(desc) {
desc
.replace(whitespaceLineRegex, "\n")
@@ -268,14 +268,14 @@ fun ExpandableMangaDescription(
onDismissRequest = { showMenu = false },
) {
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_search)) },
text = { Text(text = stringResource(MR.strings.action_search)) },
onClick = {
onTagSearch(tagSelected)
showMenu = false
},
)
DropdownMenuItem(
text = { Text(text = localize(MR.strings.action_copy_to_clipboard)) },
text = { Text(text = stringResource(MR.strings.action_copy_to_clipboard)) },
onClick = {
onCopyTagToClipboard(tagSelected)
showMenu = false
@@ -342,7 +342,7 @@ private fun MangaAndSourceTitlesLarge(
MangaCover.Book(
modifier = Modifier.fillMaxWidth(0.65f),
data = coverDataProvider(),
contentDescription = localize(MR.strings.manga_cover),
contentDescription = stringResource(MR.strings.manga_cover),
onClick = onCoverClick,
)
Spacer(modifier = Modifier.height(16.dp))
@@ -384,7 +384,7 @@ private fun MangaAndSourceTitlesSmall(
.sizeIn(maxWidth = 100.dp)
.align(Alignment.Top),
data = coverDataProvider(),
contentDescription = localize(MR.strings.manga_cover),
contentDescription = stringResource(MR.strings.manga_cover),
onClick = onCoverClick,
)
Column(
@@ -416,7 +416,7 @@ private fun MangaContentInfo(
) {
val context = LocalContext.current
Text(
text = title.ifBlank { localize(MR.strings.unknown_title) },
text = title.ifBlank { stringResource(MR.strings.unknown_title) },
style = MaterialTheme.typography.titleLarge,
modifier = Modifier.clickableNoIndication(
onLongClick = {
@@ -446,7 +446,7 @@ private fun MangaContentInfo(
)
Text(
text = author?.takeIf { it.isNotBlank() }
?: localize(MR.strings.unknown_author),
?: stringResource(MR.strings.unknown_author),
style = MaterialTheme.typography.titleSmall,
modifier = Modifier
.clickableNoIndication(
@@ -512,13 +512,13 @@ private fun MangaContentInfo(
ProvideTextStyle(MaterialTheme.typography.bodyMedium) {
Text(
text = when (status) {
SManga.ONGOING.toLong() -> localize(MR.strings.ongoing)
SManga.COMPLETED.toLong() -> localize(MR.strings.completed)
SManga.LICENSED.toLong() -> localize(MR.strings.licensed)
SManga.PUBLISHING_FINISHED.toLong() -> localize(MR.strings.publishing_finished)
SManga.CANCELLED.toLong() -> localize(MR.strings.cancelled)
SManga.ON_HIATUS.toLong() -> localize(MR.strings.on_hiatus)
else -> localize(MR.strings.unknown)
SManga.ONGOING.toLong() -> stringResource(MR.strings.ongoing)
SManga.COMPLETED.toLong() -> stringResource(MR.strings.completed)
SManga.LICENSED.toLong() -> stringResource(MR.strings.licensed)
SManga.PUBLISHING_FINISHED.toLong() -> stringResource(MR.strings.publishing_finished)
SManga.CANCELLED.toLong() -> stringResource(MR.strings.cancelled)
SManga.ON_HIATUS.toLong() -> stringResource(MR.strings.on_hiatus)
else -> stringResource(MR.strings.unknown)
},
overflow = TextOverflow.Ellipsis,
maxLines = 1,
@@ -592,7 +592,7 @@ private fun MangaSummary(
val image = AnimatedImageVector.animatedVectorResource(R.drawable.anim_caret_down)
Icon(
painter = rememberAnimatedVectorPainter(image, !expanded),
contentDescription = localize(
contentDescription = stringResource(
if (expanded) MR.strings.manga_info_collapse else MR.strings.manga_info_expand,
),
tint = MaterialTheme.colorScheme.onBackground,
@@ -30,7 +30,7 @@ import eu.kanade.presentation.components.UpIcon
import eu.kanade.presentation.manga.DownloadAction
import kotlinx.collections.immutable.persistentListOf
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.theme.active
@Composable
@@ -75,12 +75,12 @@ fun MangaToolbar(
AppBarActions(
persistentListOf(
AppBar.Action(
title = localize(MR.strings.action_select_all),
title = stringResource(MR.strings.action_select_all),
icon = Icons.Outlined.SelectAll,
onClick = onSelectAll,
),
AppBar.Action(
title = localize(MR.strings.action_select_inverse),
title = stringResource(MR.strings.action_select_inverse),
icon = Icons.Outlined.FlipToBack,
onClick = onInvertSelection,
),
@@ -104,7 +104,7 @@ fun MangaToolbar(
if (onClickDownload != null) {
add(
AppBar.Action(
title = localize(MR.strings.manga_download),
title = stringResource(MR.strings.manga_download),
icon = Icons.Outlined.Download,
onClick = { downloadExpanded = !downloadExpanded },
),
@@ -112,7 +112,7 @@ fun MangaToolbar(
}
add(
AppBar.Action(
title = localize(MR.strings.action_filter),
title = stringResource(MR.strings.action_filter),
icon = Icons.Outlined.FilterList,
iconTint = filterTint,
onClick = onClickFilter,
@@ -120,14 +120,14 @@ fun MangaToolbar(
)
add(
AppBar.OverflowAction(
title = localize(MR.strings.action_webview_refresh),
title = stringResource(MR.strings.action_webview_refresh),
onClick = onClickRefresh,
),
)
if (onClickEditCategory != null) {
add(
AppBar.OverflowAction(
title = localize(MR.strings.action_edit_categories),
title = stringResource(MR.strings.action_edit_categories),
onClick = onClickEditCategory,
),
)
@@ -135,7 +135,7 @@ fun MangaToolbar(
if (onClickMigrate != null) {
add(
AppBar.OverflowAction(
title = localize(MR.strings.action_migrate),
title = stringResource(MR.strings.action_migrate),
onClick = onClickMigrate,
),
)
@@ -143,7 +143,7 @@ fun MangaToolbar(
if (onClickShare != null) {
add(
AppBar.OverflowAction(
title = localize(MR.strings.action_share),
title = stringResource(MR.strings.action_share),
onClick = onClickShare,
),
)
@@ -14,7 +14,7 @@ import androidx.compose.ui.tooling.preview.PreviewLightDark
import eu.kanade.presentation.theme.TachiyomiTheme
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.padding
import tachiyomi.presentation.core.i18n.localizePlural
import tachiyomi.presentation.core.i18n.pluralStringResource
import tachiyomi.presentation.core.util.secondaryItemAlpha
@Composable
@@ -34,7 +34,7 @@ fun MissingChapterCountListItem(
) {
HorizontalDivider(modifier = Modifier.weight(1f))
Text(
text = localizePlural(MR.plurals.missing_chapters, count = count, count),
text = pluralStringResource(MR.plurals.missing_chapters, count = count, count),
style = MaterialTheme.typography.labelMedium,
)
HorizontalDivider(modifier = Modifier.weight(1f))
@@ -20,9 +20,7 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import androidx.compose.material3.minimumInteractiveComponentSize
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.runtime.toMutableStateList
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
@@ -32,7 +30,7 @@ import androidx.compose.ui.window.DialogProperties
import tachiyomi.i18n.MR
import tachiyomi.presentation.core.components.material.TextButton
import tachiyomi.presentation.core.components.material.padding
import tachiyomi.presentation.core.i18n.localize
import tachiyomi.presentation.core.i18n.stringResource
import tachiyomi.presentation.core.util.isScrolledToEnd
import tachiyomi.presentation.core.util.isScrolledToStart
@@ -49,10 +47,10 @@ fun ScanlatorFilterDialog(
val mutableExcludedScanlators = remember(excludedScanlators) { excludedScanlators.toMutableStateList() }
AlertDialog(
onDismissRequest = onDismissRequest,
title = { Text(text = localize(MR.strings.exclude_scanlators)) },
title = { Text(text = stringResource(MR.strings.exclude_scanlators)) },
text = textFunc@{
if (sortedAvailableScanlators.isEmpty()) {
Text(text = localize(MR.strings.no_scanlators_found))
Text(text = stringResource(MR.strings.no_scanlators_found))
return@textFunc
}
Box {
@@ -108,16 +106,16 @@ fun ScanlatorFilterDialog(
confirmButton = {
if (sortedAvailableScanlators.isEmpty()) {
TextButton(onClick = onDismissRequest) {
Text(text = localize(MR.strings.action_cancel))
Text(text = stringResource(MR.strings.action_cancel))
}
} else {
FlowRow {
TextButton(onClick = mutableExcludedScanlators::clear) {
Text(text = localize(MR.strings.action_reset))
Text(text = stringResource(MR.strings.action_reset))
}
Spacer(modifier = Modifier.weight(1f))
TextButton(onClick = onDismissRequest) {
Text(text = localize(MR.strings.action_cancel))
Text(text = stringResource(MR.strings.action_cancel))
}
TextButton(
onClick = {
@@ -125,7 +123,7 @@ fun ScanlatorFilterDialog(
onDismissRequest()
},
) {
Text(text = localize(MR.strings.action_ok))
Text(text = stringResource(MR.strings.action_ok))
}
}
}