mirror of
https://github.com/LiveFastEatTrashRaccoon/RaccoonForLemmy.git
synced 2025-02-02 22:47:32 +01:00
feat: about dialog and other improvements (#90)
* feat: add about dialog * feat: add Portuguese l10n * chore: add acknowledgements
This commit is contained in:
parent
33a4f7435e
commit
5d5afc745a
10
README.md
10
README.md
@ -124,10 +124,18 @@ this project _is_ all about experimenting and learning.
|
||||
|
||||
- the `core-md` module in the common flavor is heavily inspired by
|
||||
[Multiplatform Markdown Renderer](https://github.com/mikepenz/multiplatform-markdown-renderer) but
|
||||
the Android implementation with Markwon is taken and adapted from
|
||||
the Android implementation with Markwon is adapted from
|
||||
[Jerboa for Lemmy](https://github.com/dessalines/jerboa)
|
||||
- the UI is inspired by the really great [Thunder](https://github.com/thunder-app/thunder) app
|
||||
|
||||
## Acknowledgements:
|
||||
|
||||
This project would not be what it is were it not for the huge amount of patience and dedication
|
||||
of early adopters who sent me continous feedback and ideas for improvement after every release.
|
||||
|
||||
A special thank to all those who contributed so far, namely:
|
||||
rb_c, OverfedRaccoon, …
|
||||
|
||||
## Want to try it out?
|
||||
|
||||
- get it on [Obtainium](https://github.com/ImranR98/Obtainium/releases) by simply adding this
|
||||
|
@ -15,14 +15,6 @@ android {
|
||||
targetSdk = libs.versions.android.targetSdk.get().toInt()
|
||||
versionCode = 33
|
||||
versionName = "1.0.0-RC2"
|
||||
|
||||
buildConfigField(
|
||||
"String",
|
||||
"CRASH_REPORT_EMAIL",
|
||||
"\"diego.beraldin+raccoon4lemmy@gmail.com\""
|
||||
)
|
||||
buildConfigField("String", "CRASH_REPORT_SUBJECT", "\"Crash report\"")
|
||||
|
||||
archivesName.set("RaccoonForLemmy")
|
||||
}
|
||||
buildFeatures {
|
||||
|
@ -56,6 +56,7 @@ class LanguageBottomSheet : Screen {
|
||||
"es",
|
||||
"fr",
|
||||
"it",
|
||||
"pt",
|
||||
)
|
||||
Column(
|
||||
modifier = Modifier.fillMaxWidth().verticalScroll(rememberScrollState()),
|
||||
|
@ -17,4 +17,5 @@ object NotificationCenterContractKeys {
|
||||
const val ChangeColor = "changeColor"
|
||||
const val MultiCommunityCreated = "multiCommunityCreated"
|
||||
const val ResetContents = "resetContents"
|
||||
const val CloseDialog = "closeDialog"
|
||||
}
|
@ -23,6 +23,7 @@ fun String.toLanguageName() = when (this) {
|
||||
"es" -> stringResource(MR.strings.language_es)
|
||||
"fr" -> stringResource(MR.strings.language_fr)
|
||||
"it" -> stringResource(MR.strings.language_it)
|
||||
"pt" -> stringResource(MR.strings.language_pt)
|
||||
else -> stringResource(MR.strings.language_en)
|
||||
}
|
||||
|
||||
|
@ -50,6 +50,7 @@ kotlin {
|
||||
implementation(projects.coreNotifications)
|
||||
implementation(projects.resources)
|
||||
implementation(projects.domainLemmy.data)
|
||||
implementation(projects.domainLemmy.repository)
|
||||
implementation(projects.domainIdentity)
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,15 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.di
|
||||
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialogMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.main.SettingsMviModel
|
||||
import org.koin.java.KoinJavaComponent.inject
|
||||
|
||||
actual fun getSettingsScreenModel(): SettingsMviModel {
|
||||
actual fun getSettingsViewModel(): SettingsMviModel {
|
||||
val res: SettingsMviModel by inject(SettingsMviModel::class.java)
|
||||
return res
|
||||
}
|
||||
|
||||
actual fun getAboutDialogViewModel(): AboutDialogMviModel {
|
||||
val res: AboutDialogMviModel by inject(AboutDialogMviModel::class.java)
|
||||
return res
|
||||
}
|
||||
|
@ -1,6 +1,8 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.di
|
||||
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.architecture.DefaultMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialogMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialogViewModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.main.SettingsMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.main.SettingsViewModel
|
||||
import org.koin.dsl.module
|
||||
@ -8,9 +10,7 @@ import org.koin.dsl.module
|
||||
val settingsTabModule = module {
|
||||
factory<SettingsMviModel> {
|
||||
SettingsViewModel(
|
||||
mvi = DefaultMviModel(
|
||||
SettingsMviModel.UiState(),
|
||||
),
|
||||
mvi = DefaultMviModel(SettingsMviModel.UiState()),
|
||||
settingsRepository = get(),
|
||||
accountRepository = get(),
|
||||
themeRepository = get(),
|
||||
@ -21,4 +21,11 @@ val settingsTabModule = module {
|
||||
crashReportConfiguration = get(),
|
||||
)
|
||||
}
|
||||
factory<AboutDialogMviModel> {
|
||||
AboutDialogViewModel(
|
||||
mvi = DefaultMviModel(AboutDialogMviModel.UiState()),
|
||||
identityRepository = get(),
|
||||
communityRepository = get(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,8 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.di
|
||||
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialogMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.main.SettingsMviModel
|
||||
|
||||
expect fun getSettingsScreenModel(): SettingsMviModel
|
||||
expect fun getSettingsViewModel(): SettingsMviModel
|
||||
|
||||
expect fun getAboutDialogViewModel(): AboutDialogMviModel
|
||||
|
@ -0,0 +1,12 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog
|
||||
|
||||
internal object AboutContants {
|
||||
const val REPORT_URL =
|
||||
"https://github.com/diegoberaldin/RaccoonForLemmy/issues/new?labels=bug"
|
||||
const val CHANGELOG_URL =
|
||||
"https://github.com/diegoberaldin/RaccoonForLemmy/releases/latest"
|
||||
const val REPORT_EMAIL_ADDRESS = "diego.beraldin+raccoon4lemmy@gmail.com"
|
||||
const val WEBSITE_URL = "https://github.com/diegoberaldin/RaccoonForLemmy"
|
||||
const val LEMMY_COMMUNITY_NAME = "raccoonforlemmy"
|
||||
const val LEMMY_COMMUNITY_INSTANCE = "lemmy.world"
|
||||
}
|
@ -0,0 +1,248 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog
|
||||
|
||||
import androidx.compose.foundation.Image
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Row
|
||||
import androidx.compose.foundation.layout.Spacer
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.foundation.layout.height
|
||||
import androidx.compose.foundation.layout.heightIn
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.foundation.lazy.LazyColumn
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.filled.OpenInBrowser
|
||||
import androidx.compose.material3.AlertDialog
|
||||
import androidx.compose.material3.Button
|
||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.ColorFilter
|
||||
import androidx.compose.ui.graphics.painter.Painter
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.platform.LocalUriHandler
|
||||
import androidx.compose.ui.text.style.TextDecoration
|
||||
import androidx.compose.ui.unit.dp
|
||||
import cafe.adriel.voyager.core.model.rememberScreenModel
|
||||
import cafe.adriel.voyager.core.screen.Screen
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.Spacing
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.architecture.bindToLifecycle
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.communitydetail.CommunityDetailScreen
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.handleUrl
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.di.getNavigationCoordinator
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.notifications.NotificationCenterContractKeys
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.notifications.di.getNotificationCenter
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.persistence.di.getSettingsRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.utils.onClick
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.di.getAboutDialogViewModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.CHANGELOG_URL
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.REPORT_EMAIL_ADDRESS
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.REPORT_URL
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.WEBSITE_URL
|
||||
import com.github.diegoberaldin.raccoonforlemmy.resources.MR
|
||||
import dev.icerock.moko.resources.compose.painterResource
|
||||
import dev.icerock.moko.resources.compose.stringResource
|
||||
import kotlinx.coroutines.flow.launchIn
|
||||
import kotlinx.coroutines.flow.onEach
|
||||
|
||||
class AboutDialog : Screen {
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
override fun Content() {
|
||||
|
||||
val viewModel = rememberScreenModel { getAboutDialogViewModel() }
|
||||
viewModel.bindToLifecycle(key)
|
||||
|
||||
val uriHandler = LocalUriHandler.current
|
||||
val navigator = remember { getNavigationCoordinator().getRootNavigator() }
|
||||
val settingsRepository = remember { getSettingsRepository() }
|
||||
val settings by settingsRepository.currentSettings.collectAsState()
|
||||
val uiState by viewModel.uiState.collectAsState()
|
||||
val notificationCenter = remember { getNotificationCenter() }
|
||||
|
||||
LaunchedEffect(viewModel) {
|
||||
viewModel.effects.onEach { effect ->
|
||||
when (effect) {
|
||||
is AboutDialogMviModel.Effect.OpenCommunity -> {
|
||||
navigator?.push(
|
||||
CommunityDetailScreen(
|
||||
community = effect.community,
|
||||
otherInstance = effect.instance,
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}.launchIn(this)
|
||||
}
|
||||
|
||||
AlertDialog(
|
||||
onDismissRequest = {
|
||||
notificationCenter.getObserver(NotificationCenterContractKeys.CloseDialog)
|
||||
?.invoke(Unit)
|
||||
},
|
||||
) {
|
||||
Column(
|
||||
modifier = Modifier
|
||||
.background(color = MaterialTheme.colorScheme.surface)
|
||||
.padding(vertical = Spacing.s),
|
||||
horizontalAlignment = Alignment.CenterHorizontally,
|
||||
) {
|
||||
Text(
|
||||
text = stringResource(MR.strings.settings_about),
|
||||
style = MaterialTheme.typography.titleLarge,
|
||||
color = MaterialTheme.colorScheme.onBackground,
|
||||
)
|
||||
Spacer(modifier = Modifier.height(Spacing.s))
|
||||
LazyColumn(
|
||||
modifier = Modifier
|
||||
.padding(vertical = Spacing.s, horizontal = Spacing.m)
|
||||
.heightIn(max = 400.dp),
|
||||
verticalArrangement = Arrangement.spacedBy(Spacing.xs)
|
||||
) {
|
||||
item {
|
||||
AboutItem(
|
||||
text = stringResource(MR.strings.settings_about_app_version),
|
||||
value = uiState.version,
|
||||
)
|
||||
}
|
||||
item {
|
||||
AboutItem(
|
||||
text = stringResource(MR.strings.settings_about_changelog),
|
||||
vector = Icons.Default.OpenInBrowser,
|
||||
textDecoration = TextDecoration.Underline,
|
||||
onClick = {
|
||||
handleUrl(
|
||||
url = CHANGELOG_URL,
|
||||
openExternal = settings.openUrlsInExternalBrowser,
|
||||
uriHandler = uriHandler,
|
||||
navigator = navigator,
|
||||
)
|
||||
}
|
||||
)
|
||||
}
|
||||
item {
|
||||
Button(
|
||||
onClick = {
|
||||
handleUrl(
|
||||
url = REPORT_URL,
|
||||
openExternal = settings.openUrlsInExternalBrowser,
|
||||
uriHandler = uriHandler,
|
||||
navigator = navigator,
|
||||
)
|
||||
},
|
||||
) {
|
||||
Text(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
text = stringResource(MR.strings.settings_about_report_github),
|
||||
style = MaterialTheme.typography.labelLarge,
|
||||
)
|
||||
}
|
||||
Button(
|
||||
onClick = {
|
||||
uriHandler.openUri("mailto:$REPORT_EMAIL_ADDRESS")
|
||||
},
|
||||
) {
|
||||
Text(
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
text = stringResource(MR.strings.settings_about_report_email),
|
||||
style = MaterialTheme.typography.labelLarge,
|
||||
)
|
||||
}
|
||||
}
|
||||
item {
|
||||
AboutItem(
|
||||
painter = painterResource(MR.images.ic_github),
|
||||
text = stringResource(MR.strings.settings_about_view_github),
|
||||
textDecoration = TextDecoration.Underline,
|
||||
onClick = {
|
||||
handleUrl(
|
||||
url = WEBSITE_URL,
|
||||
openExternal = settings.openUrlsInExternalBrowser,
|
||||
uriHandler = uriHandler,
|
||||
navigator = navigator,
|
||||
)
|
||||
},
|
||||
)
|
||||
}
|
||||
item {
|
||||
AboutItem(
|
||||
painter = painterResource(MR.images.ic_lemmy),
|
||||
text = stringResource(MR.strings.settings_about_view_lemmy),
|
||||
textDecoration = TextDecoration.Underline,
|
||||
onClick = {
|
||||
viewModel.reduce(AboutDialogMviModel.Intent.OpenOwnCommunity)
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
Button(
|
||||
onClick = {
|
||||
notificationCenter.getObserver(NotificationCenterContractKeys.CloseDialog)
|
||||
?.invoke(Unit)
|
||||
},
|
||||
) {
|
||||
Text(text = stringResource(MR.strings.button_close))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun AboutItem(
|
||||
painter: Painter? = null,
|
||||
vector: ImageVector? = null,
|
||||
text: String,
|
||||
textDecoration: TextDecoration = TextDecoration.None,
|
||||
value: String = "",
|
||||
onClick: (() -> Unit)? = null,
|
||||
) {
|
||||
Row(
|
||||
modifier = Modifier.padding(
|
||||
horizontal = Spacing.xs,
|
||||
vertical = Spacing.s,
|
||||
).onClick {
|
||||
onClick?.invoke()
|
||||
},
|
||||
horizontalArrangement = Arrangement.spacedBy(Spacing.s),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
) {
|
||||
val imageModifier = Modifier.size(22.dp)
|
||||
if (painter != null) {
|
||||
Image(
|
||||
modifier = imageModifier,
|
||||
painter = painter,
|
||||
contentDescription = null,
|
||||
)
|
||||
} else if (vector != null) {
|
||||
Image(
|
||||
modifier = imageModifier,
|
||||
imageVector = vector,
|
||||
contentDescription = null,
|
||||
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
|
||||
)
|
||||
}
|
||||
Text(
|
||||
text = text,
|
||||
style = MaterialTheme.typography.bodyLarge,
|
||||
textDecoration = textDecoration,
|
||||
)
|
||||
Spacer(modifier = Modifier.weight(1f))
|
||||
if (value.isNotEmpty()) {
|
||||
Text(
|
||||
text = value,
|
||||
style = MaterialTheme.typography.bodyLarge,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog
|
||||
|
||||
import cafe.adriel.voyager.core.model.ScreenModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.architecture.MviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.CommunityModel
|
||||
|
||||
interface AboutDialogMviModel :
|
||||
MviModel<AboutDialogMviModel.Intent, AboutDialogMviModel.UiState, AboutDialogMviModel.Effect>,
|
||||
ScreenModel {
|
||||
|
||||
sealed interface Intent {
|
||||
data object OpenOwnCommunity : Intent
|
||||
}
|
||||
|
||||
data class UiState(
|
||||
val version: String = "",
|
||||
)
|
||||
|
||||
sealed interface Effect {
|
||||
data class OpenCommunity(
|
||||
val community: CommunityModel,
|
||||
val instance: String = "",
|
||||
) : Effect
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,56 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog
|
||||
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.architecture.DefaultMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.architecture.MviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.utils.AppInfo
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.identity.repository.IdentityRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.repository.CommunityRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.LEMMY_COMMUNITY_INSTANCE
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutContants.LEMMY_COMMUNITY_NAME
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.IO
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
|
||||
class AboutDialogViewModel(
|
||||
private val mvi: DefaultMviModel<AboutDialogMviModel.Intent, AboutDialogMviModel.UiState, AboutDialogMviModel.Effect>,
|
||||
private val identityRepository: IdentityRepository,
|
||||
private val communityRepository: CommunityRepository,
|
||||
) : AboutDialogMviModel,
|
||||
MviModel<AboutDialogMviModel.Intent, AboutDialogMviModel.UiState, AboutDialogMviModel.Effect> by mvi {
|
||||
|
||||
override fun onStarted() {
|
||||
mvi.onStarted()
|
||||
mvi.updateState {
|
||||
it.copy(
|
||||
version = AppInfo.versionCode,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
override fun reduce(intent: AboutDialogMviModel.Intent) {
|
||||
when (intent) {
|
||||
AboutDialogMviModel.Intent.OpenOwnCommunity -> {
|
||||
mvi.scope?.launch(Dispatchers.IO) {
|
||||
val auth = identityRepository.authToken.value
|
||||
val (community, instance) = (communityRepository.getSubscribed(auth)
|
||||
.firstOrNull { it.name == LEMMY_COMMUNITY_NAME } to "").let {
|
||||
if (it.first == null) {
|
||||
communityRepository.get(
|
||||
name = LEMMY_COMMUNITY_NAME, instance = LEMMY_COMMUNITY_INSTANCE
|
||||
) to LEMMY_COMMUNITY_INSTANCE
|
||||
} else it
|
||||
}
|
||||
|
||||
if (community != null) {
|
||||
mvi.emitEffect(
|
||||
AboutDialogMviModel.Effect.OpenCommunity(
|
||||
community = community, instance = instance
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -66,7 +66,6 @@ interface SettingsMviModel :
|
||||
val autoLoadImages: Boolean = false,
|
||||
val autoExpandComments: Boolean = false,
|
||||
val fullHeightImages: Boolean = false,
|
||||
val appVersion: String = "",
|
||||
)
|
||||
|
||||
sealed interface Effect
|
||||
|
@ -67,7 +67,8 @@ import com.github.diegoberaldin.raccoonforlemmy.core.utils.toLanguageName
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.ListingType
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.SortType
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.toReadableName
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.di.getSettingsScreenModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.di.getSettingsViewModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialog
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.ui.SettingsTab
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.ui.components.SettingsColorRow
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.ui.components.SettingsHeader
|
||||
@ -89,7 +90,7 @@ class SettingsScreen : Screen {
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
override fun Content() {
|
||||
val model = rememberScreenModel { getSettingsScreenModel() }
|
||||
val model = rememberScreenModel { getSettingsViewModel() }
|
||||
model.bindToLifecycle(SettingsTab.key)
|
||||
val uiState by model.uiState.collectAsState()
|
||||
val bottomSheetNavigator = LocalBottomSheetNavigator.current
|
||||
@ -101,6 +102,7 @@ class SettingsScreen : Screen {
|
||||
val navigationCoordinator = remember { getNavigationCoordinator() }
|
||||
val navigator = remember { navigationCoordinator.getRootNavigator() }
|
||||
val scrollState = rememberScrollState()
|
||||
|
||||
LaunchedEffect(navigator) {
|
||||
navigationCoordinator.onDoubleTabSelection.onEach { tab ->
|
||||
if (tab == SettingsTab) {
|
||||
@ -110,6 +112,7 @@ class SettingsScreen : Screen {
|
||||
}
|
||||
}.launchIn(this)
|
||||
}
|
||||
|
||||
DisposableEffect(key) {
|
||||
onDispose {
|
||||
notificationCenter.removeObserver(key)
|
||||
@ -120,6 +123,7 @@ class SettingsScreen : Screen {
|
||||
|
||||
var uiFontSizeWorkaround by remember { mutableStateOf(true) }
|
||||
val themeRepository = remember { getThemeRepository() }
|
||||
|
||||
LaunchedEffect(themeRepository) {
|
||||
themeRepository.uiFontScale.drop(1).onEach {
|
||||
uiFontSizeWorkaround = false
|
||||
@ -132,6 +136,7 @@ class SettingsScreen : Screen {
|
||||
}
|
||||
var upvoteColorDialogOpened by remember { mutableStateOf(false) }
|
||||
var downvoteColorDialogOpened by remember { mutableStateOf(false) }
|
||||
var infoDialogOpened by remember { mutableStateOf(false) }
|
||||
|
||||
Scaffold(
|
||||
modifier = Modifier.padding(Spacing.xxs),
|
||||
@ -544,10 +549,13 @@ class SettingsScreen : Screen {
|
||||
}
|
||||
)
|
||||
|
||||
// app version
|
||||
// about
|
||||
SettingsRow(
|
||||
title = stringResource(MR.strings.settings_app_version),
|
||||
value = uiState.appVersion,
|
||||
title = stringResource(MR.strings.settings_about),
|
||||
value = "",
|
||||
onTap = {
|
||||
infoDialogOpened = true
|
||||
},
|
||||
)
|
||||
|
||||
Spacer(modifier = Modifier.height(Spacing.xxxl))
|
||||
@ -578,6 +586,7 @@ class SettingsScreen : Screen {
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
if (downvoteColorDialogOpened) {
|
||||
val initial = uiState.downvoteColor ?: MaterialTheme.colorScheme.tertiary
|
||||
ColorPickerDialog(
|
||||
@ -595,5 +604,12 @@ class SettingsScreen : Screen {
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
if (infoDialogOpened) {
|
||||
notificationCenter.addObserver({
|
||||
infoDialogOpened = false
|
||||
}, key, NotificationCenterContractKeys.CloseDialog)
|
||||
AboutDialog().Content()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,6 @@ import com.github.diegoberaldin.raccoonforlemmy.core.notifications.NotificationC
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.persistence.data.SettingsModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.persistence.repository.AccountRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.persistence.repository.SettingsRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.utils.AppInfo
|
||||
import com.github.diegoberaldin.raccoonforlemmy.core.utils.CrashReportConfiguration
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.identity.repository.IdentityRepository
|
||||
import com.github.diegoberaldin.raccoonforlemmy.domain.lemmy.data.ListingType
|
||||
@ -112,7 +111,6 @@ class SettingsViewModel(
|
||||
autoLoadImages = settings.autoLoadImages,
|
||||
autoExpandComments = settings.autoExpandComments,
|
||||
fullHeightImages = settings.fullHeightImages,
|
||||
appVersion = AppInfo.versionCode,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,14 @@
|
||||
package com.github.diegoberaldin.raccoonforlemmy.feature.settings.di
|
||||
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.dialog.AboutDialogMviModel
|
||||
import com.github.diegoberaldin.raccoonforlemmy.feature.settings.main.SettingsMviModel
|
||||
import org.koin.core.component.KoinComponent
|
||||
import org.koin.core.component.inject
|
||||
|
||||
actual fun getSettingsScreenModel(): SettingsMviModel = SettingsScreenModelHelper.model
|
||||
actual fun getSettingsViewModel(): SettingsMviModel = SettingsScreenModelHelper.settingsViewModel
|
||||
actual fun getAboutDialogViewModel(): AboutDialogMviModel = SettingsScreenModelHelper.aboutViewModel
|
||||
|
||||
object SettingsScreenModelHelper : KoinComponent {
|
||||
val model: SettingsMviModel by inject()
|
||||
val settingsViewModel: SettingsMviModel by inject()
|
||||
val aboutViewModel: AboutDialogMviModel by inject()
|
||||
}
|
||||
|
@ -93,6 +93,7 @@
|
||||
<string name="language_es" translatable="false">Español</string>
|
||||
<string name="language_fr" translatable="false">Français</string>
|
||||
<string name="language_it" translatable="false">Italiano</string>
|
||||
<string name="language_pt" translatable="false">Português</string>
|
||||
<string name="login_field_instance_name">Instance name</string>
|
||||
<string name="login_field_label_optional">(optional)</string>
|
||||
<string name="login_field_password">Password</string>
|
||||
@ -144,7 +145,13 @@
|
||||
<string name="profile_section_posts">Posts</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">y</string>
|
||||
<string name="settings_app_version">App version</string>
|
||||
<string name="settings_about">About this app…</string>
|
||||
<string name="settings_about_app_version">App version</string>
|
||||
<string name="settings_about_changelog">View full changelog</string>
|
||||
<string name="settings_about_report_github">Report a bug (GitHub)</string>
|
||||
<string name="settings_about_report_email">Report a bug (email)</string>
|
||||
<string name="settings_about_view_github">View on GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Lemmy community</string>
|
||||
<string name="settings_auto_expand_comments">Automatically expand comments</string>
|
||||
<string name="settings_auto_load_images">Automatically load images</string>
|
||||
<string name="settings_blur_nsfw">Blur NSFW images</string>
|
||||
|
@ -139,7 +139,13 @@
|
||||
<string name="profile_section_posts">Beträge</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">y</string>
|
||||
<string name="settings_app_version">App Version</string>
|
||||
<string name="settings_about">Über diese App…</string>
|
||||
<string name="settings_about_app_version">App version</string>
|
||||
<string name="settings_about_changelog">Änderungsprotokoll anzeigen</string>
|
||||
<string name="settings_about_report_github">Melde einen technischen Fehler (GitHub)</string>
|
||||
<string name="settings_about_report_email">Melde einen technischen Fehler (Email)</string>
|
||||
<string name="settings_about_view_github">Ansicht auf GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Lemmy Community</string>
|
||||
<string name="settings_auto_expand_comments">Kommentare automatisch erweitern</string>
|
||||
<string name="settings_auto_load_images">Bilder automatisch laden</string>
|
||||
<string name="settings_blur_nsfw">NSFW-Bilder verwischen</string>
|
||||
|
@ -1,203 +1,209 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<resources>
|
||||
<string name="action_back_to_top">Volver arriba</string>
|
||||
<string name="action_chat">Enviar mensaje</string>
|
||||
<string name="action_clear_read">Esconder leídos</string>
|
||||
<string name="action_create_post">Nueva publicación</string>
|
||||
<string name="action_reply">Responder</string>
|
||||
<string name="button_close">Cerrar</string>
|
||||
<string name="button_confirm">Confirmar</string>
|
||||
<string name="button_load">Cargar</string>
|
||||
<string name="button_reset">Reiniciar</string>
|
||||
<string name="comment_action_delete">Eliminar</string>
|
||||
<string name="community_detail_block">Bloquear</string>
|
||||
<string name="community_detail_block_instance">Bloquear instancia</string>
|
||||
<string name="community_detail_info">Info comunidad</string>
|
||||
<string name="community_detail_instance_info">Detalles instancia</string>
|
||||
<string name="community_info_comments">comentarios</string>
|
||||
<string name="community_info_daily_active_users">usuarios activos (día)</string>
|
||||
<string name="community_info_monthly_active_users">usuarios activos (mes)</string>
|
||||
<string name="community_info_posts">publicaciones</string>
|
||||
<string name="community_info_subscribers">suscriptores</string>
|
||||
<string name="community_info_weekly_active_users">usuarios activos (semana)</string>
|
||||
<string name="create_comment_body">Texto comentario</string>
|
||||
<string name="create_comment_title">Nuevo comentario</string>
|
||||
<string name="create_post_body">Texto publicación</string>
|
||||
<string name="create_post_name">Título publicación</string>
|
||||
<string name="create_post_nsfw">NSFW</string>
|
||||
<string name="create_post_tab_editor">Editor</string>
|
||||
<string name="create_post_tab_preview">Previsualización</string>
|
||||
<string name="create_post_title">Nueva publicación</string>
|
||||
<string name="create_post_url">URL</string>
|
||||
<string name="create_report_placeholder">Texto del informe (opcional)</string>
|
||||
<string name="create_report_title_comment">Crear informe sobre comentario</string>
|
||||
<string name="create_report_title_post">Crear informe sobre publicación</string>
|
||||
<string name="dialog_raw_content_text">Texto</string>
|
||||
<string name="dialog_raw_content_title">Título</string>
|
||||
<string name="dialog_raw_content_url">URL</string>
|
||||
<string name="dialog_title_change_instance">Cambiar de instancia</string>
|
||||
<string name="dialog_title_raw_content">Contenido raw</string>
|
||||
<string name="explore_result_type_all">Todos</string>
|
||||
<string name="explore_result_type_comments">Comentarios</string>
|
||||
<string name="explore_result_type_communities">Comunidades</string>
|
||||
<string name="explore_result_type_posts">Publicaciones</string>
|
||||
<string name="explore_result_type_users">Usuarios</string>
|
||||
<string name="explore_search_placeholder">Búsqueda</string>
|
||||
<string name="home_instance_via">a través de %1$s</string>
|
||||
<string name="home_listing_title">Tipo de listado</string>
|
||||
<string name="home_listing_type_all">Todos</string>
|
||||
<string name="home_listing_type_local">Locales</string>
|
||||
<string name="home_listing_type_subscribed">Subscripciones</string>
|
||||
<string name="home_sort_title">Tipo de orden</string>
|
||||
<string name="home_sort_type_active">Activos</string>
|
||||
<string name="home_sort_type_controversial">Controvertidos</string>
|
||||
<string name="home_sort_type_hot">Populares</string>
|
||||
<string name="home_sort_type_most_comments">Más comentados</string>
|
||||
<string name="home_sort_type_new">Recientes</string>
|
||||
<string name="home_sort_type_new_comments">Comentarios recientes</string>
|
||||
<string name="home_sort_type_old">Antiguos</string>
|
||||
<string name="home_sort_type_scaled">Proporcional</string>
|
||||
<string name="home_sort_type_top">Lo mejor</string>
|
||||
<string name="home_sort_type_top_12_hours">Lo mejor de las últimas 12h</string>
|
||||
<string name="home_sort_type_top_12_hours_short">12h</string>
|
||||
<string name="home_sort_type_top_6_hours">Lo mejor de las últimas 6h</string>
|
||||
<string name="home_sort_type_top_6_hours_short">6h</string>
|
||||
<string name="home_sort_type_top_day">Lo mejor del día</string>
|
||||
<string name="home_sort_type_top_day_short">día</string>
|
||||
<string name="home_sort_type_top_hour">Lo mejor de la última hora</string>
|
||||
<string name="home_sort_type_top_hour_short">1h</string>
|
||||
<string name="home_sort_type_top_month">Lo mejor del mes</string>
|
||||
<string name="home_sort_type_top_month_short">mes</string>
|
||||
<string name="home_sort_type_top_week">Lo mejor de la semana</string>
|
||||
<string name="home_sort_type_top_week_short">semana</string>
|
||||
<string name="home_sort_type_top_year">Lo mejor del año</string>
|
||||
<string name="home_sort_type_top_year_short">año</string>
|
||||
<string name="inbox_chat_message">Mensaje</string>
|
||||
<string name="inbox_item_mention">te ha mencionado en</string>
|
||||
<string name="inbox_item_reply_comment">ha contestado a tu comentario en</string>
|
||||
<string name="inbox_item_reply_post">ha contestado a tu publicación en</string>
|
||||
<string name="inbox_listing_type_all">Todos</string>
|
||||
<string name="inbox_listing_type_title">Tipo de mensajes</string>
|
||||
<string name="inbox_listing_type_unread">No leídos</string>
|
||||
<string name="inbox_not_logged_message">Acceso no efectuado.\nAñadir una cuenta en la pantalla
|
||||
Perfil para acceder a los mensajes.
|
||||
</string>
|
||||
<string name="inbox_section_mentions">Menciones</string>
|
||||
<string name="inbox_section_messages">Mensajes</string>
|
||||
<string name="inbox_section_replies">Respuestas</string>
|
||||
<string name="instance_detail_communities">Comunidades</string>
|
||||
<string name="instance_detail_title">Instancia: %1$s</string>
|
||||
<string name="lang">es</string>
|
||||
<string name="login_field_instance_name">Nombre instancia</string>
|
||||
<string name="login_field_label_optional">(opcional)</string>
|
||||
<string name="login_field_password">Contraseña</string>
|
||||
<string name="login_field_token">TOTP 2FA token</string>
|
||||
<string name="login_field_user_name">Nombre de usuario (o email)</string>
|
||||
<string name="manage_accounts_button_add">Nueva cuenta</string>
|
||||
<string name="manage_accounts_title">Gestionar cuentas</string>
|
||||
<string name="manage_subscriptions_header_multicommunities">Multi-comunidades</string>
|
||||
<string name="manage_subscriptions_header_subscriptions">Subscripciones</string>
|
||||
<string name="message_empty_comments">Está demasiado tranquilo por aquí.\n¿Quisieras ser tú el
|
||||
que va a escribir el primer comentario?
|
||||
</string>
|
||||
<string name="message_empty_list">Ningún elemento para mostrar</string>
|
||||
<string name="message_generic_error">Error genérico</string>
|
||||
<string name="message_image_loading_error">No ha sido posible descargar la imagen</string>
|
||||
<string name="message_invalid_field">Campo no válido</string>
|
||||
<string name="message_missing_field">Campo obligatorio</string>
|
||||
<string name="message_operation_successful">Operación completada con éxito</string>
|
||||
<string name="multi_community_editor_communities">Comunidades</string>
|
||||
<string name="multi_community_editor_icon">Icono</string>
|
||||
<string name="multi_community_editor_name">Nombre</string>
|
||||
<string name="multi_community_editor_title">Editor multi-comunidad</string>
|
||||
<string name="navigation_drawer_anonymous">Anónimo</string>
|
||||
<string name="navigation_drawer_title_bookmarks">Guardados</string>
|
||||
<string name="navigation_drawer_title_subscriptions">Subscripciones</string>
|
||||
<string name="navigation_home">Publicaciones</string>
|
||||
<string name="navigation_inbox">Mensajes</string>
|
||||
<string name="navigation_profile">Perfil</string>
|
||||
<string name="navigation_search">Descubre</string>
|
||||
<string name="navigation_settings">Ajustes</string>
|
||||
<string name="post_action_edit">Modificar</string>
|
||||
<string name="post_action_hide">Esconder</string>
|
||||
<string name="post_action_report">Crear informe…</string>
|
||||
<string name="post_action_see_raw">Ver raw…</string>
|
||||
<string name="post_action_share">Compartir…</string>
|
||||
<string name="post_detail_cross_posts">también publicado en:</string>
|
||||
<string name="post_detail_load_more_comments">Descarga más comentarios…</string>
|
||||
<string name="post_hour_short">h</string>
|
||||
<string name="post_minute_short">m</string>
|
||||
<string name="post_second_short">s</string>
|
||||
<string name="profile_button_login">Acceder</string>
|
||||
<string name="profile_day_short">d</string>
|
||||
<string name="profile_million_short">m</string>
|
||||
<string name="profile_month_short">m</string>
|
||||
<string name="profile_not_logged_message">Acceso no efectuado.\nAñadir una cuenta para
|
||||
continuar.
|
||||
</string>
|
||||
<string name="profile_section_comments">Comentarios</string>
|
||||
<string name="profile_section_posts">Publicaciones</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">a</string>
|
||||
<string name="settings_app_version">Versión app</string>
|
||||
<string name="settings_auto_expand_comments">Expandir comentarios automáticamente</string>
|
||||
<string name="settings_auto_load_images">Cargar imágenes automáticamente</string>
|
||||
<string name="settings_blur_nsfw">Desenfocar imágenes NSFW</string>
|
||||
<string name="settings_color_aquamarine">🐬 Delfín distraído</string>
|
||||
<string name="settings_color_banana">🦔 Erizo errante</string>
|
||||
<string name="settings_color_blue">🐳 Ballena bailarina</string>
|
||||
<string name="settings_color_custom">Personalizado</string>
|
||||
<string name="settings_color_dialog_alpha">A</string>
|
||||
<string name="settings_color_dialog_blue">B</string>
|
||||
<string name="settings_color_dialog_green">G</string>
|
||||
<string name="settings_color_dialog_red">R</string>
|
||||
<string name="settings_color_dialog_title">Elegir un color</string>
|
||||
<string name="settings_color_gray">🦝 Mapache maloliente</string>
|
||||
<string name="settings_color_green">🐸 Rana relajada</string>
|
||||
<string name="settings_color_orange">🦊 Zorro zancudo</string>
|
||||
<string name="settings_color_pink">🦄 Unicornio único</string>
|
||||
<string name="settings_color_purple">🐙 Pulpo portentoso</string>
|
||||
<string name="settings_color_red">🦀 Cangrejo corredizo</string>
|
||||
<string name="settings_color_white">🐼 Panda peludo</string>
|
||||
<string name="settings_content_font_large">Grande</string>
|
||||
<string name="settings_content_font_larger">Más grande</string>
|
||||
<string name="settings_content_font_largest">Máximo</string>
|
||||
<string name="settings_content_font_normal">Normal</string>
|
||||
<string name="settings_content_font_scale">Tamaño de texto de contenidos</string>
|
||||
<string name="settings_content_font_small">Pequeño</string>
|
||||
<string name="settings_content_font_smaller">Más pequeño</string>
|
||||
<string name="settings_content_font_smallest">Mínimo</string>
|
||||
<string name="settings_custom_seed_color">Color tema personalizado</string>
|
||||
<string name="settings_default_comment_sort_type">Orden comentarios predefinido</string>
|
||||
<string name="settings_default_listing_type">Tipo de listado predefinido</string>
|
||||
<string name="settings_default_post_sort_type">Orden publicaciones predefinido</string>
|
||||
<string name="settings_downvote_color">Color votos negativos</string>
|
||||
<string name="settings_dynamic_colors">Utilizar colores dinámicos</string>
|
||||
<string name="settings_enable_crash_report">Activar notificación de accidentes</string>
|
||||
<string name="settings_enable_swipe_actions">Activar acciones de deslizamiento</string>
|
||||
<string name="settings_full_height_images">Altura completa imágenes</string>
|
||||
<string name="settings_include_nsfw">Incluir contenidos NSFW</string>
|
||||
<string name="settings_language">Idioma</string>
|
||||
<string name="settings_navigation_bar_titles_visible">Mostrar títulos en la barra de
|
||||
navegación
|
||||
</string>
|
||||
<string name="settings_open_url_external">Abrir URL en navegador externo</string>
|
||||
<string name="settings_post_layout">Disposición publicaciones</string>
|
||||
<string name="settings_post_layout_card">Tarjetas</string>
|
||||
<string name="settings_post_layout_compact">Compacto</string>
|
||||
<string name="settings_post_layout_full">Completo</string>
|
||||
<string name="settings_section_appearance">Aspecto</string>
|
||||
<string name="settings_section_behaviour">Comportamiento</string>
|
||||
<string name="settings_section_debug">Debug</string>
|
||||
<string name="settings_section_feed">Publicaciones y comentarios</string>
|
||||
<string name="settings_section_nsfw">NSFW</string>
|
||||
<string name="settings_separate_up_and_downvotes">Distinguir votos positivos / negativos
|
||||
</string>
|
||||
<string name="settings_theme_black">Oscuro (AMOLED)</string>
|
||||
<string name="settings_theme_dark">Oscuro</string>
|
||||
<string name="settings_theme_light">Claro</string>
|
||||
<string name="settings_ui_font_family">Fuente interfaz</string>
|
||||
<string name="settings_ui_font_scale">Tamaño de texto interfaz</string>
|
||||
<string name="settings_ui_theme">Tema interfaz</string>
|
||||
<string name="settings_upvote_color">Color votos positivos</string>
|
||||
<string name="action_back_to_top">Volver arriba</string>
|
||||
<string name="action_chat">Enviar mensaje</string>
|
||||
<string name="action_clear_read">Esconder leídos</string>
|
||||
<string name="action_create_post">Nueva publicación</string>
|
||||
<string name="action_reply">Responder</string>
|
||||
<string name="button_close">Cerrar</string>
|
||||
<string name="button_confirm">Confirmar</string>
|
||||
<string name="button_load">Cargar</string>
|
||||
<string name="button_reset">Reiniciar</string>
|
||||
<string name="comment_action_delete">Eliminar</string>
|
||||
<string name="community_detail_block">Bloquear</string>
|
||||
<string name="community_detail_block_instance">Bloquear instancia</string>
|
||||
<string name="community_detail_info">Info comunidad</string>
|
||||
<string name="community_detail_instance_info">Detalles instancia</string>
|
||||
<string name="community_info_comments">comentarios</string>
|
||||
<string name="community_info_daily_active_users">usuarios activos (día)</string>
|
||||
<string name="community_info_monthly_active_users">usuarios activos (mes)</string>
|
||||
<string name="community_info_posts">publicaciones</string>
|
||||
<string name="community_info_subscribers">suscriptores</string>
|
||||
<string name="community_info_weekly_active_users">usuarios activos (semana)</string>
|
||||
<string name="create_comment_body">Texto comentario</string>
|
||||
<string name="create_comment_title">Nuevo comentario</string>
|
||||
<string name="create_post_body">Texto publicación</string>
|
||||
<string name="create_post_name">Título publicación</string>
|
||||
<string name="create_post_nsfw">NSFW</string>
|
||||
<string name="create_post_tab_editor">Editor</string>
|
||||
<string name="create_post_tab_preview">Previsualización</string>
|
||||
<string name="create_post_title">Nueva publicación</string>
|
||||
<string name="create_post_url">URL</string>
|
||||
<string name="create_report_placeholder">Texto del informe (opcional)</string>
|
||||
<string name="create_report_title_comment">Crear informe sobre comentario</string>
|
||||
<string name="create_report_title_post">Crear informe sobre publicación</string>
|
||||
<string name="dialog_raw_content_text">Texto</string>
|
||||
<string name="dialog_raw_content_title">Título</string>
|
||||
<string name="dialog_raw_content_url">URL</string>
|
||||
<string name="dialog_title_change_instance">Cambiar de instancia</string>
|
||||
<string name="dialog_title_raw_content">Contenido raw</string>
|
||||
<string name="explore_result_type_all">Todos</string>
|
||||
<string name="explore_result_type_comments">Comentarios</string>
|
||||
<string name="explore_result_type_communities">Comunidades</string>
|
||||
<string name="explore_result_type_posts">Publicaciones</string>
|
||||
<string name="explore_result_type_users">Usuarios</string>
|
||||
<string name="explore_search_placeholder">Búsqueda</string>
|
||||
<string name="home_instance_via">a través de %1$s</string>
|
||||
<string name="home_listing_title">Tipo de listado</string>
|
||||
<string name="home_listing_type_all">Todos</string>
|
||||
<string name="home_listing_type_local">Locales</string>
|
||||
<string name="home_listing_type_subscribed">Subscripciones</string>
|
||||
<string name="home_sort_title">Tipo de orden</string>
|
||||
<string name="home_sort_type_active">Activos</string>
|
||||
<string name="home_sort_type_controversial">Controvertidos</string>
|
||||
<string name="home_sort_type_hot">Populares</string>
|
||||
<string name="home_sort_type_most_comments">Más comentados</string>
|
||||
<string name="home_sort_type_new">Recientes</string>
|
||||
<string name="home_sort_type_new_comments">Comentarios recientes</string>
|
||||
<string name="home_sort_type_old">Antiguos</string>
|
||||
<string name="home_sort_type_scaled">Proporcional</string>
|
||||
<string name="home_sort_type_top">Lo mejor</string>
|
||||
<string name="home_sort_type_top_12_hours">Lo mejor de las últimas 12h</string>
|
||||
<string name="home_sort_type_top_12_hours_short">12h</string>
|
||||
<string name="home_sort_type_top_6_hours">Lo mejor de las últimas 6h</string>
|
||||
<string name="home_sort_type_top_6_hours_short">6h</string>
|
||||
<string name="home_sort_type_top_day">Lo mejor del día</string>
|
||||
<string name="home_sort_type_top_day_short">día</string>
|
||||
<string name="home_sort_type_top_hour">Lo mejor de la última hora</string>
|
||||
<string name="home_sort_type_top_hour_short">1h</string>
|
||||
<string name="home_sort_type_top_month">Lo mejor del mes</string>
|
||||
<string name="home_sort_type_top_month_short">mes</string>
|
||||
<string name="home_sort_type_top_week">Lo mejor de la semana</string>
|
||||
<string name="home_sort_type_top_week_short">semana</string>
|
||||
<string name="home_sort_type_top_year">Lo mejor del año</string>
|
||||
<string name="home_sort_type_top_year_short">año</string>
|
||||
<string name="inbox_chat_message">Mensaje</string>
|
||||
<string name="inbox_item_mention">te ha mencionado en</string>
|
||||
<string name="inbox_item_reply_comment">ha contestado a tu comentario en</string>
|
||||
<string name="inbox_item_reply_post">ha contestado a tu publicación en</string>
|
||||
<string name="inbox_listing_type_all">Todos</string>
|
||||
<string name="inbox_listing_type_title">Tipo de mensajes</string>
|
||||
<string name="inbox_listing_type_unread">No leídos</string>
|
||||
<string name="inbox_not_logged_message">Acceso no efectuado.\nAñadir una cuenta en la pantalla
|
||||
Perfil para acceder a los mensajes.
|
||||
</string>
|
||||
<string name="inbox_section_mentions">Menciones</string>
|
||||
<string name="inbox_section_messages">Mensajes</string>
|
||||
<string name="inbox_section_replies">Respuestas</string>
|
||||
<string name="instance_detail_communities">Comunidades</string>
|
||||
<string name="instance_detail_title">Instancia: %1$s</string>
|
||||
<string name="lang">es</string>
|
||||
<string name="login_field_instance_name">Nombre instancia</string>
|
||||
<string name="login_field_label_optional">(opcional)</string>
|
||||
<string name="login_field_password">Contraseña</string>
|
||||
<string name="login_field_token">TOTP 2FA token</string>
|
||||
<string name="login_field_user_name">Nombre de usuario (o email)</string>
|
||||
<string name="manage_accounts_button_add">Nueva cuenta</string>
|
||||
<string name="manage_accounts_title">Gestionar cuentas</string>
|
||||
<string name="manage_subscriptions_header_multicommunities">Multi-comunidades</string>
|
||||
<string name="manage_subscriptions_header_subscriptions">Subscripciones</string>
|
||||
<string name="message_empty_comments">Está demasiado tranquilo por aquí.\n¿Quisieras ser tú el
|
||||
que va a escribir el primer comentario?
|
||||
</string>
|
||||
<string name="message_empty_list">Ningún elemento para mostrar</string>
|
||||
<string name="message_generic_error">Error genérico</string>
|
||||
<string name="message_image_loading_error">No ha sido posible descargar la imagen</string>
|
||||
<string name="message_invalid_field">Campo no válido</string>
|
||||
<string name="message_missing_field">Campo obligatorio</string>
|
||||
<string name="message_operation_successful">Operación completada con éxito</string>
|
||||
<string name="multi_community_editor_communities">Comunidades</string>
|
||||
<string name="multi_community_editor_icon">Icono</string>
|
||||
<string name="multi_community_editor_name">Nombre</string>
|
||||
<string name="multi_community_editor_title">Editor multi-comunidad</string>
|
||||
<string name="navigation_drawer_anonymous">Anónimo</string>
|
||||
<string name="navigation_drawer_title_bookmarks">Guardados</string>
|
||||
<string name="navigation_drawer_title_subscriptions">Subscripciones</string>
|
||||
<string name="navigation_home">Publicaciones</string>
|
||||
<string name="navigation_inbox">Mensajes</string>
|
||||
<string name="navigation_profile">Perfil</string>
|
||||
<string name="navigation_search">Descubre</string>
|
||||
<string name="navigation_settings">Ajustes</string>
|
||||
<string name="post_action_edit">Modificar</string>
|
||||
<string name="post_action_hide">Esconder</string>
|
||||
<string name="post_action_report">Crear informe…</string>
|
||||
<string name="post_action_see_raw">Ver raw…</string>
|
||||
<string name="post_action_share">Compartir…</string>
|
||||
<string name="post_detail_cross_posts">también publicado en:</string>
|
||||
<string name="post_detail_load_more_comments">Descarga más comentarios…</string>
|
||||
<string name="post_hour_short">h</string>
|
||||
<string name="post_minute_short">m</string>
|
||||
<string name="post_second_short">s</string>
|
||||
<string name="profile_button_login">Acceder</string>
|
||||
<string name="profile_day_short">d</string>
|
||||
<string name="profile_million_short">m</string>
|
||||
<string name="profile_month_short">m</string>
|
||||
<string name="profile_not_logged_message">Acceso no efectuado.\nAñadir una cuenta para
|
||||
continuar.
|
||||
</string>
|
||||
<string name="profile_section_comments">Comentarios</string>
|
||||
<string name="profile_section_posts">Publicaciones</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">a</string>
|
||||
<string name="settings_about">Sobre esta app…</string>
|
||||
<string name="settings_about_app_version">Versión app</string>
|
||||
<string name="settings_about_changelog">Ver registro de cambios</string>
|
||||
<string name="settings_about_report_github">Reportar un error (GitHub)</string>
|
||||
<string name="settings_about_report_email">Reportar un error (email)</string>
|
||||
<string name="settings_about_view_github">Ver en GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Comunidad Lemmy</string>
|
||||
<string name="settings_auto_expand_comments">Expandir comentarios automáticamente</string>
|
||||
<string name="settings_auto_load_images">Cargar imágenes automáticamente</string>
|
||||
<string name="settings_blur_nsfw">Desenfocar imágenes NSFW</string>
|
||||
<string name="settings_color_aquamarine">🐬 Delfín distraído</string>
|
||||
<string name="settings_color_banana">🦔 Erizo errante</string>
|
||||
<string name="settings_color_blue">🐳 Ballena bailarina</string>
|
||||
<string name="settings_color_custom">Personalizado</string>
|
||||
<string name="settings_color_dialog_alpha">A</string>
|
||||
<string name="settings_color_dialog_blue">B</string>
|
||||
<string name="settings_color_dialog_green">G</string>
|
||||
<string name="settings_color_dialog_red">R</string>
|
||||
<string name="settings_color_dialog_title">Elegir un color</string>
|
||||
<string name="settings_color_gray">🦝 Mapache maloliente</string>
|
||||
<string name="settings_color_green">🐸 Rana relajada</string>
|
||||
<string name="settings_color_orange">🦊 Zorro zancudo</string>
|
||||
<string name="settings_color_pink">🦄 Unicornio único</string>
|
||||
<string name="settings_color_purple">🐙 Pulpo portentoso</string>
|
||||
<string name="settings_color_red">🦀 Cangrejo corredizo</string>
|
||||
<string name="settings_color_white">🐼 Panda peludo</string>
|
||||
<string name="settings_content_font_large">Grande</string>
|
||||
<string name="settings_content_font_larger">Más grande</string>
|
||||
<string name="settings_content_font_largest">Máximo</string>
|
||||
<string name="settings_content_font_normal">Normal</string>
|
||||
<string name="settings_content_font_scale">Tamaño de texto de contenidos</string>
|
||||
<string name="settings_content_font_small">Pequeño</string>
|
||||
<string name="settings_content_font_smaller">Más pequeño</string>
|
||||
<string name="settings_content_font_smallest">Mínimo</string>
|
||||
<string name="settings_custom_seed_color">Color tema personalizado</string>
|
||||
<string name="settings_default_comment_sort_type">Orden comentarios predefinido</string>
|
||||
<string name="settings_default_listing_type">Tipo de listado predefinido</string>
|
||||
<string name="settings_default_post_sort_type">Orden publicaciones predefinido</string>
|
||||
<string name="settings_downvote_color">Color votos negativos</string>
|
||||
<string name="settings_dynamic_colors">Utilizar colores dinámicos</string>
|
||||
<string name="settings_enable_crash_report">Activar notificación de accidentes</string>
|
||||
<string name="settings_enable_swipe_actions">Activar acciones de deslizamiento</string>
|
||||
<string name="settings_full_height_images">Altura completa imágenes</string>
|
||||
<string name="settings_include_nsfw">Incluir contenidos NSFW</string>
|
||||
<string name="settings_language">Idioma</string>
|
||||
<string name="settings_navigation_bar_titles_visible">Mostrar títulos en la barra de
|
||||
navegación
|
||||
</string>
|
||||
<string name="settings_open_url_external">Abrir URL en navegador externo</string>
|
||||
<string name="settings_post_layout">Disposición publicaciones</string>
|
||||
<string name="settings_post_layout_card">Tarjetas</string>
|
||||
<string name="settings_post_layout_compact">Compacto</string>
|
||||
<string name="settings_post_layout_full">Completo</string>
|
||||
<string name="settings_section_appearance">Aspecto</string>
|
||||
<string name="settings_section_behaviour">Comportamiento</string>
|
||||
<string name="settings_section_debug">Debug</string>
|
||||
<string name="settings_section_feed">Publicaciones y comentarios</string>
|
||||
<string name="settings_section_nsfw">NSFW</string>
|
||||
<string name="settings_separate_up_and_downvotes">Distinguir votos positivos / negativos
|
||||
</string>
|
||||
<string name="settings_theme_black">Oscuro (AMOLED)</string>
|
||||
<string name="settings_theme_dark">Oscuro</string>
|
||||
<string name="settings_theme_light">Claro</string>
|
||||
<string name="settings_ui_font_family">Fuente interfaz</string>
|
||||
<string name="settings_ui_font_scale">Tamaño de texto interfaz</string>
|
||||
<string name="settings_ui_theme">Tema interfaz</string>
|
||||
<string name="settings_upvote_color">Color votos positivos</string>
|
||||
</resources>
|
@ -139,7 +139,13 @@
|
||||
<string name="profile_section_posts">Publications</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">a</string>
|
||||
<string name="settings_app_version">Version de l\'application</string>
|
||||
<string name="settings_about">À propos de cette application…</string>
|
||||
<string name="settings_about_app_version">Version de l\'application</string>
|
||||
<string name="settings_about_changelog">Voir le journal des modifications</string>
|
||||
<string name="settings_about_report_github">Signaler un bug (GitHub)</string>
|
||||
<string name="settings_about_report_email">Signaler un bug (e-mail)</string>
|
||||
<string name="settings_about_view_github">Voir sur GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Communauté Lemmy</string>
|
||||
<string name="settings_auto_expand_comments">Élargir les commentaires automatiquement</string>
|
||||
<string name="settings_auto_load_images">Charger les images automatiquement</string>
|
||||
<string name="settings_blur_nsfw">Flouer les images NSFW</string>
|
||||
|
BIN
resources/src/commonMain/resources/MR/images/ic_github@1x.png
Normal file
BIN
resources/src/commonMain/resources/MR/images/ic_github@1x.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.7 KiB |
BIN
resources/src/commonMain/resources/MR/images/ic_lemmy@1x.png
Normal file
BIN
resources/src/commonMain/resources/MR/images/ic_lemmy@1x.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 283 KiB |
@ -139,7 +139,13 @@
|
||||
<string name="profile_section_posts">Post</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">a</string>
|
||||
<string name="settings_app_version">Versione app</string>
|
||||
<string name="settings_about">Informazioni app…</string>
|
||||
<string name="settings_about_app_version">Versione app</string>
|
||||
<string name="settings_about_changelog">Visualizza changelog</string>
|
||||
<string name="settings_about_report_github">Segnala un bug (GitHub)</string>
|
||||
<string name="settings_about_report_email">Segnala un bug (email)</string>
|
||||
<string name="settings_about_view_github">Vedi su GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Lemmy community</string>
|
||||
<string name="settings_auto_expand_comments">Espandi commenti automaticamente</string>
|
||||
<string name="settings_auto_load_images">Carica immagini automaticamente</string>
|
||||
<string name="settings_blur_nsfw">Sfuma immagini NSFW</string>
|
||||
|
207
resources/src/commonMain/resources/MR/pt/strings.xml
Executable file
207
resources/src/commonMain/resources/MR/pt/strings.xml
Executable file
@ -0,0 +1,207 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<resources>
|
||||
<string name="action_back_to_top">Voltar ao início</string>
|
||||
<string name="action_chat">Enviar mensagem</string>
|
||||
<string name="action_clear_read">Limpar lidas</string>
|
||||
<string name="action_create_post">Criar publicação</string>
|
||||
<string name="action_reply">Responder</string>
|
||||
<string name="button_close">Fechar</string>
|
||||
<string name="button_confirm">Confirmar</string>
|
||||
<string name="button_load">Carregar</string>
|
||||
<string name="button_reset">Reiniciar</string>
|
||||
<string name="comment_action_delete">Eliminar</string>
|
||||
<string name="community_detail_block">Bloquear</string>
|
||||
<string name="community_detail_block_instance">Bloquear instância</string>
|
||||
<string name="community_detail_info">Informações da comunidade</string>
|
||||
<string name="community_detail_instance_info">Detalhes da instância</string>
|
||||
<string name="community_info_comments">Comentários</string>
|
||||
<string name="community_info_daily_active_users">usuários activos (día)</string>
|
||||
<string name="community_info_monthly_active_users">usuários activos (mês)</string>
|
||||
<string name="community_info_posts">publicações</string>
|
||||
<string name="community_info_subscribers">subscriptores</string>
|
||||
<string name="community_info_weekly_active_users">usuários activos (semana)</string>
|
||||
<string name="create_comment_body">Texto do comentário</string>
|
||||
<string name="create_comment_title">Novo comentário</string>
|
||||
<string name="create_post_body">Texto da publicação</string>
|
||||
<string name="create_post_name">Título da publicação</string>
|
||||
<string name="create_post_nsfw">NSFW</string>
|
||||
<string name="create_post_tab_editor">Editor</string>
|
||||
<string name="create_post_tab_preview">Visualização</string>
|
||||
<string name="create_post_title">Nova publicação</string>
|
||||
<string name="create_post_url">URL</string>
|
||||
<string name="create_report_placeholder">Texto da denúncia</string>
|
||||
<string name="create_report_title_comment">Denunciar comentário</string>
|
||||
<string name="create_report_title_post">Denunciar publicação</string>
|
||||
<string name="dialog_raw_content_text">Texto</string>
|
||||
<string name="dialog_raw_content_title">Título</string>
|
||||
<string name="dialog_raw_content_url">URL</string>
|
||||
<string name="dialog_title_change_instance">Mudar instância</string>
|
||||
<string name="dialog_title_raw_content">Conteúdo bruto</string>
|
||||
<string name="explore_result_type_all">Todos</string>
|
||||
<string name="explore_result_type_comments">Comentários</string>
|
||||
<string name="explore_result_type_communities">Comunidades</string>
|
||||
<string name="explore_result_type_posts">Publicações</string>
|
||||
<string name="explore_result_type_users">Usuários</string>
|
||||
<string name="explore_search_placeholder">Buscar</string>
|
||||
<string name="home_instance_via">via %1$s</string>
|
||||
<string name="home_listing_title">Listagens</string>
|
||||
<string name="home_listing_type_all">Todas</string>
|
||||
<string name="home_listing_type_local">Locais</string>
|
||||
<string name="home_listing_type_subscribed">Subscritas</string>
|
||||
<string name="home_sort_title">Ordenar por</string>
|
||||
<string name="home_sort_type_active">Ativas</string>
|
||||
<string name="home_sort_type_controversial">Controversas</string>
|
||||
<string name="home_sort_type_hot">Populares</string>
|
||||
<string name="home_sort_type_most_comments">Mais comentários</string>
|
||||
<string name="home_sort_type_new">Novas</string>
|
||||
<string name="home_sort_type_new_comments">Novos comentários</string>
|
||||
<string name="home_sort_type_old">Antigos</string>
|
||||
<string name="home_sort_type_scaled">Proporcional</string>
|
||||
<string name="home_sort_type_top">Topo</string>
|
||||
<string name="home_sort_type_top_12_hours">Topo 12 horas</string>
|
||||
<string name="home_sort_type_top_12_hours_short">12h</string>
|
||||
<string name="home_sort_type_top_6_hours">Topo 6 horas</string>
|
||||
<string name="home_sort_type_top_6_hours_short">6h</string>
|
||||
<string name="home_sort_type_top_day">Topo do día</string>
|
||||
<string name="home_sort_type_top_day_short">día</string>
|
||||
<string name="home_sort_type_top_hour">Topo da hora</string>
|
||||
<string name="home_sort_type_top_hour_short">1h</string>
|
||||
<string name="home_sort_type_top_month">Topo do mês</string>
|
||||
<string name="home_sort_type_top_month_short">mês</string>
|
||||
<string name="home_sort_type_top_week">Topo da semana</string>
|
||||
<string name="home_sort_type_top_week_short">semana</string>
|
||||
<string name="home_sort_type_top_year">Topo do ano</string>
|
||||
<string name="home_sort_type_top_year_short">ano</string>
|
||||
<string name="inbox_chat_message">Mensagem</string>
|
||||
<string name="inbox_item_mention">te mencionou em</string>
|
||||
<string name="inbox_item_reply_comment">te respondeu em</string>
|
||||
<string name="inbox_item_reply_post">respondeu à tua publicação em</string>
|
||||
<string name="inbox_listing_type_all">Todas</string>
|
||||
<string name="inbox_listing_type_title">Tipo de caixa</string>
|
||||
<string name="inbox_listing_type_unread">Não lidas</string>
|
||||
<string name="inbox_not_logged_message">Atualmente, não tem sessão iniciada.\nAdicione uma conta
|
||||
a partir do ecrã de perfil para ver a sua caixa de entrada.
|
||||
</string>
|
||||
<string name="inbox_section_mentions">Menções</string>
|
||||
<string name="inbox_section_messages">Mensagens</string>
|
||||
<string name="inbox_section_replies">Respostas</string>
|
||||
<string name="instance_detail_communities">Comunidades</string>
|
||||
<string name="instance_detail_title">Instância: %1$s</string>
|
||||
<string name="lang">pt</string>
|
||||
<string name="login_field_instance_name">Nome da instância</string>
|
||||
<string name="login_field_label_optional">(optional)</string>
|
||||
<string name="login_field_password">Palavra-passe</string>
|
||||
<string name="login_field_token">TOTP 2FA token</string>
|
||||
<string name="login_field_user_name">Nome de usuário (ou email)</string>
|
||||
<string name="manage_accounts_button_add">Adicionar uma conta</string>
|
||||
<string name="manage_accounts_title">Gestionar as contas</string>
|
||||
<string name="manage_subscriptions_header_multicommunities">Multi-comunidades</string>
|
||||
<string name="manage_subscriptions_header_subscriptions">Subscripções</string>
|
||||
<string name="message_empty_comments">É demasiado silencioso lá.\nGostarias de ser aquele que
|
||||
escreve o primeiro comentário?
|
||||
</string>
|
||||
<string name="message_empty_list">Nenhum item a apresentar</string>
|
||||
<string name="message_generic_error">Erro genérico</string>
|
||||
<string name="message_image_loading_error">Erro ao carregar imagem</string>
|
||||
<string name="message_invalid_field">Campo inválido</string>
|
||||
<string name="message_missing_field">Campo ausente</string>
|
||||
<string name="message_operation_successful">Operação concluída com êxito</string>
|
||||
<string name="multi_community_editor_communities">Comunidades</string>
|
||||
<string name="multi_community_editor_icon">Ícone</string>
|
||||
<string name="multi_community_editor_name">Nome</string>
|
||||
<string name="multi_community_editor_title">Editor multi-comunidad</string>
|
||||
<string name="navigation_drawer_anonymous">Anônimo</string>
|
||||
<string name="navigation_drawer_title_bookmarks">Guardados</string>
|
||||
<string name="navigation_drawer_title_subscriptions">Subscripções</string>
|
||||
<string name="navigation_home">Publicações</string>
|
||||
<string name="navigation_inbox">Caixa</string>
|
||||
<string name="navigation_profile">Perfil</string>
|
||||
<string name="navigation_search">Explorar</string>
|
||||
<string name="navigation_settings">Configurações</string>
|
||||
<string name="post_action_edit">Modificar</string>
|
||||
<string name="post_action_hide">Esconder</string>
|
||||
<string name="post_action_report">Denunciar…</string>
|
||||
<string name="post_action_see_raw">Ver conteúdo bruto</string>
|
||||
<string name="post_action_share">Compartilhar…</string>
|
||||
<string name="post_detail_cross_posts">publicado também em</string>
|
||||
<string name="post_detail_load_more_comments">Carregar mais comentários</string>
|
||||
<string name="post_hour_short">h</string>
|
||||
<string name="post_minute_short">m</string>
|
||||
<string name="post_second_short">s</string>
|
||||
<string name="profile_button_login">Entrar</string>
|
||||
<string name="profile_day_short">d</string>
|
||||
<string name="profile_million_short">m</string>
|
||||
<string name="profile_month_short">m</string>
|
||||
<string name="profile_not_logged_message">Atualmente, não tem sessão iniciada.\nAdicione uma
|
||||
conta para continuar.
|
||||
</string>
|
||||
<string name="profile_section_comments">Comentários</string>
|
||||
<string name="profile_section_posts">Publicações</string>
|
||||
<string name="profile_thousand_short">k</string>
|
||||
<string name="profile_year_short">y</string>
|
||||
<string name="settings_about">Sobre esta app…</string>
|
||||
<string name="settings_about_app_version">Versão da app</string>
|
||||
<string name="settings_about_changelog">Ver o registro de alterações</string>
|
||||
<string name="settings_about_report_github">Relatar um bug (GitHub)</string>
|
||||
<string name="settings_about_report_email">Relatar um bugr (email)</string>
|
||||
<string name="settings_about_view_github">Ver no GitHub</string>
|
||||
<string name="settings_about_view_lemmy">Comunidade Lemmy</string>
|
||||
<string name="settings_auto_expand_comments">Expandir comentários automaticamente</string>
|
||||
<string name="settings_auto_load_images">Carregar imagens automaticamente</string>
|
||||
<string name="settings_blur_nsfw">Desfocar imagens NSFW</string>
|
||||
<string name="settings_color_aquamarine">🐬 Golfinho gostoso</string>
|
||||
<string name="settings_color_banana">🦔 Ouriço ossudo</string>
|
||||
<string name="settings_color_blue">🐳 Baleia bailarina</string>
|
||||
<string name="settings_color_custom">Personalizado</string>
|
||||
<string name="settings_color_dialog_alpha">A</string>
|
||||
<string name="settings_color_dialog_blue">B</string>
|
||||
<string name="settings_color_dialog_green">G</string>
|
||||
<string name="settings_color_dialog_red">R</string>
|
||||
<string name="settings_color_dialog_title">Escolher uma cor</string>
|
||||
<string name="settings_color_gray">🦝 Guaxinim guerreiro</string>
|
||||
<string name="settings_color_green">🐸 Sapo silencioso</string>
|
||||
<string name="settings_color_orange">🦊 Raposa rica</string>
|
||||
<string name="settings_color_pink">🦄 Unicórnio único</string>
|
||||
<string name="settings_color_purple">🐙 Polvo portentoso</string>
|
||||
<string name="settings_color_red">🦀 Caranguejo crocante</string>
|
||||
<string name="settings_color_white">🐼 Urso universitário</string>
|
||||
<string name="settings_content_font_large">Grande</string>
|
||||
<string name="settings_content_font_larger">Extra grande</string>
|
||||
<string name="settings_content_font_largest">Duplo extra large</string>
|
||||
<string name="settings_content_font_normal">Normal</string>
|
||||
<string name="settings_content_font_scale">Tamanho do texto do conteúdo</string>
|
||||
<string name="settings_content_font_small">Pequeno</string>
|
||||
<string name="settings_content_font_smaller">Extra pequeno</string>
|
||||
<string name="settings_content_font_smallest">Doblo extra pequeno</string>
|
||||
<string name="settings_custom_seed_color">Cor do tema personalizado</string>
|
||||
<string name="settings_default_comment_sort_type">Tipo de ordem comentários padrão</string>
|
||||
<string name="settings_default_listing_type">Tipo de listagem padrão</string>
|
||||
<string name="settings_default_post_sort_type">Tipo de ordem publicações padrão</string>
|
||||
<string name="settings_downvote_color">Cor votos negativos</string>
|
||||
<string name="settings_dynamic_colors">Usar cores dinâmicas</string>
|
||||
<string name="settings_enable_crash_report">Ativar relatórios de falhas</string>
|
||||
<string name="settings_enable_swipe_actions">Ativar ações de deslizar</string>
|
||||
<string name="settings_full_height_images">Imagens de altura natural</string>
|
||||
<string name="settings_include_nsfw">Incluir conteúdo NSFW</string>
|
||||
<string name="settings_language">Idioma</string>
|
||||
<string name="settings_navigation_bar_titles_visible">Mostrar títulos da barra de navegação
|
||||
</string>
|
||||
<string name="settings_open_url_external">Abrir URLs em navegador externo</string>
|
||||
<string name="settings_post_layout">Layout publicações</string>
|
||||
<string name="settings_post_layout_card">Ficha</string>
|
||||
<string name="settings_post_layout_compact">Compacto</string>
|
||||
<string name="settings_post_layout_full">Completo</string>
|
||||
<string name="settings_section_appearance">Aparencia</string>
|
||||
<string name="settings_section_behaviour">Comportamento</string>
|
||||
<string name="settings_section_debug">Debug</string>
|
||||
<string name="settings_section_feed">Publicaçoes e comentários</string>
|
||||
<string name="settings_section_nsfw">NSFW</string>
|
||||
<string name="settings_separate_up_and_downvotes">Separar votos positivos e negativos</string>
|
||||
<string name="settings_theme_black">Escuro (AMOLED)</string>
|
||||
<string name="settings_theme_dark">Escuro</string>
|
||||
<string name="settings_theme_light">Claro</string>
|
||||
<string name="settings_ui_font_family">Fonte da interface</string>
|
||||
<string name="settings_ui_font_scale">Tamanho do texto da interface</string>
|
||||
<string name="settings_ui_theme">Tema da interface</string>
|
||||
<string name="settings_upvote_color">Cor votos positivos</string>
|
||||
</resources>
|
Loading…
x
Reference in New Issue
Block a user