From 750c9ffbeb9d1639ede700cbaf1f5f2320c27ffa Mon Sep 17 00:00:00 2001 From: Acclorite <140836141+Acclorite@users.noreply.github.com> Date: Sat, 8 Mar 2025 09:49:20 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20New=20options=20in=20About?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Reverted UI to old style * Removed some options * Added new options and badges --- .../presentation/about/AboutBadgeItem.kt | 49 ++-- .../presentation/about/AboutBadges.kt | 48 ++-- .../presentation/about/AboutItem.kt | 61 ++--- .../presentation/about/AboutLayout.kt | 210 +++++++++--------- .../presentation/about/AboutScaffold.kt | 6 +- .../core/constants/AboutBadgeConstants.kt | 32 ++- .../core/constants/LinkConstants.kt | 5 +- app/src/main/res/drawable/codeberg.png | Bin 0 -> 2367 bytes app/src/main/res/drawable/github.png | Bin 0 -> 2914 bytes app/src/main/res/drawable/gitlab.png | Bin 0 -> 1799 bytes app/src/main/res/drawable/patreon.png | Bin 1879 -> 0 bytes app/src/main/res/drawable/x_logo.png | Bin 3059 -> 0 bytes app/src/main/res/values-ar/strings.xml | 5 +- app/src/main/res/values-cs/strings.xml | 2 - app/src/main/res/values-de/strings.xml | 5 +- app/src/main/res/values-es/strings.xml | 5 +- app/src/main/res/values-fr/strings.xml | 5 +- app/src/main/res/values-hi/strings.xml | 2 - app/src/main/res/values-it/strings.xml | 5 +- app/src/main/res/values-pl/strings.xml | 2 - app/src/main/res/values-pt-rBR/strings.xml | 5 +- app/src/main/res/values-ta/strings.xml | 5 +- app/src/main/res/values-tr/strings.xml | 5 +- app/src/main/res/values-uk/strings.xml | 8 +- app/src/main/res/values-zh-rCN/strings.xml | 5 +- app/src/main/res/values/strings.xml | 15 +- 26 files changed, 216 insertions(+), 269 deletions(-) create mode 100644 app/src/main/res/drawable/codeberg.png create mode 100644 app/src/main/res/drawable/github.png create mode 100644 app/src/main/res/drawable/gitlab.png delete mode 100644 app/src/main/res/drawable/patreon.png delete mode 100644 app/src/main/res/drawable/x_logo.png diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadgeItem.kt b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadgeItem.kt index b40888fc..7fbfcea1 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadgeItem.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadgeItem.kt @@ -6,47 +6,38 @@ package ua.acclorite.book_story.presentation.about -import androidx.compose.foundation.background -import androidx.compose.foundation.clickable -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size -import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import ua.acclorite.book_story.domain.about.Badge +import ua.acclorite.book_story.presentation.core.components.common.IconButton @Composable fun AboutBadgeItem( badge: Badge, onClick: () -> Unit ) { - Box( - modifier = Modifier - .clip(MaterialTheme.shapes.large) - .background(MaterialTheme.colorScheme.surfaceContainer) - .clickable { onClick() } - .padding(14.dp) - ) { - if (badge.imageVector == null && badge.drawable != null) { - Icon( - modifier = Modifier.size(22.dp), - painter = painterResource(id = badge.drawable), - contentDescription = stringResource(id = badge.contentDescription), - tint = MaterialTheme.colorScheme.tertiary - ) - } else if (badge.imageVector != null && badge.drawable == null) { - Icon( - modifier = Modifier.size(22.dp), - imageVector = badge.imageVector, - contentDescription = stringResource(id = badge.contentDescription), - tint = MaterialTheme.colorScheme.tertiary - ) + if (badge.imageVector == null && badge.drawable != null) { + IconButton( + modifier = Modifier.size(22.dp), + icon = badge.drawable, + contentDescription = badge.contentDescription, + disableOnClick = false, + color = MaterialTheme.colorScheme.tertiary + ) { + onClick() + } + } else if (badge.imageVector != null && badge.drawable == null) { + IconButton( + modifier = Modifier.size(22.dp), + icon = badge.imageVector, + contentDescription = badge.contentDescription, + disableOnClick = false, + color = MaterialTheme.colorScheme.tertiary + ) { + onClick() } } } \ No newline at end of file diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadges.kt b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadges.kt index 7dc22031..ff98bd29 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadges.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutBadges.kt @@ -7,13 +7,16 @@ package ua.acclorite.book_story.presentation.about import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.items import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.unit.dp import ua.acclorite.book_story.R import ua.acclorite.book_story.presentation.core.constants.Constants import ua.acclorite.book_story.presentation.core.constants.provideAboutBadges @@ -26,30 +29,35 @@ fun AboutBadges( ) { val context = LocalContext.current - LazyRow( + Box( modifier = Modifier.fillMaxWidth(), - verticalAlignment = Alignment.CenterVertically, - horizontalArrangement = Arrangement.SpaceBetween + contentAlignment = Alignment.Center ) { - items( - Constants.provideAboutBadges(), - key = { it.id } - ) { badge -> - AboutBadgeItem(badge = badge) { - when (badge.id) { - "tryzub" -> { - context.getString(R.string.slava_ukraini) - .showToast(context = context, longToast = false) - } + LazyRow( + Modifier.padding(18.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(13.dp) + ) { + items( + Constants.provideAboutBadges(), + key = { it.id } + ) { badge -> + AboutBadgeItem(badge = badge) { + when (badge.id) { + "tryzub" -> { + context.getString(R.string.slava_ukraini) + .showToast(context = context, longToast = false) + } - else -> { - badge.url?.let { - navigateToBrowserPage( - AboutEvent.OnNavigateToBrowserPage( - page = it, - context = context + else -> { + badge.url?.let { + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = it, + context = context + ) ) - ) + } } } } diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutItem.kt b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutItem.kt index 9cd0831d..329983f0 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutItem.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutItem.kt @@ -6,78 +6,49 @@ package ua.acclorite.book_story.presentation.about -import androidx.compose.animation.core.EaseInOut -import androidx.compose.animation.core.tween -import androidx.compose.foundation.background import androidx.compose.foundation.clickable +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.padding -import androidx.compose.foundation.layout.size -import androidx.compose.foundation.layout.width import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip -import androidx.compose.ui.text.AnnotatedString import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import ua.acclorite.book_story.presentation.core.components.common.StyledText -import ua.acclorite.book_story.presentation.core.components.progress_indicator.CircularProgressIndicator -import ua.acclorite.book_story.ui.theme.FadeTransitionPreservingSpace @Composable fun AboutItem( modifier: Modifier = Modifier, title: String, - description: AnnotatedString?, - showLoading: Boolean = false, + description: String?, isOnClickEnabled: Boolean = true, onClick: () -> Unit = {} ) { - Row( + Column( modifier .fillMaxWidth() - .clip(MaterialTheme.shapes.large) - .background(MaterialTheme.colorScheme.surfaceContainer) .clickable(enabled = isOnClickEnabled) { onClick() } - .padding(horizontal = 18.dp, vertical = 18.dp), - verticalAlignment = Alignment.CenterVertically + .padding(horizontal = 18.dp, vertical = 14.dp), + verticalArrangement = Arrangement.spacedBy(2.dp) ) { - Column(Modifier.weight(1f)) { + StyledText( + text = title, + style = MaterialTheme.typography.bodyLarge.copy( + color = MaterialTheme.colorScheme.onSurface, + fontSize = 18.sp + ) + ) + description?.let { StyledText( - text = title, - style = MaterialTheme.typography.bodyLarge.copy( - color = MaterialTheme.colorScheme.onSurface, - fontSize = 18.sp + text = it, + style = MaterialTheme.typography.bodySmall.copy( + color = MaterialTheme.colorScheme.onSurfaceVariant ) ) - description?.let { - StyledText( - text = it, - style = MaterialTheme.typography.bodySmall.copy( - color = MaterialTheme.colorScheme.onSurfaceVariant - ) - ) - } - } - - FadeTransitionPreservingSpace( - visible = showLoading, - animationSpec = tween(150, easing = EaseInOut) - ) { - Row { - Spacer(modifier = Modifier.width(18.dp)) - CircularProgressIndicator( - color = MaterialTheme.colorScheme.onSurfaceVariant, - modifier = Modifier.size(28.dp) - ) - } } } } \ No newline at end of file diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutLayout.kt b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutLayout.kt index fd5890e9..f2711e7a 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutLayout.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutLayout.kt @@ -6,29 +6,25 @@ package ua.acclorite.book_story.presentation.about -import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.navigationBarsPadding +import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.lazy.LazyListState -import androidx.compose.foundation.shape.CornerSize import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.HorizontalDivider import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource -import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.unit.dp import ua.acclorite.book_story.R import ua.acclorite.book_story.presentation.core.components.common.LazyColumnWithScrollbar @@ -36,6 +32,7 @@ import ua.acclorite.book_story.presentation.core.constants.Constants import ua.acclorite.book_story.presentation.core.constants.provideContributorsPage import ua.acclorite.book_story.presentation.core.constants.provideIssuesPage import ua.acclorite.book_story.presentation.core.constants.provideReleasesPage +import ua.acclorite.book_story.presentation.core.constants.provideSupportPage import ua.acclorite.book_story.presentation.core.constants.provideTranslationPage import ua.acclorite.book_story.ui.about.AboutEvent @@ -56,6 +53,10 @@ fun AboutLayout( .padding(top = paddingValues.calculateTopPadding()), state = listState ) { + item { + Spacer(modifier = Modifier.height(16.dp)) + } + item { Box( modifier = Modifier.fillMaxWidth(), @@ -65,111 +66,114 @@ fun AboutLayout( painterResource(id = R.drawable.app_icon), contentDescription = stringResource(id = R.string.app_icon_content_desc), modifier = Modifier - .padding(horizontal = 14.dp) - .padding( - top = 40.dp, - bottom = 50.dp - ) - .size(180.dp), - tint = MaterialTheme.colorScheme.primary + .padding(14.dp) + .size(120.dp), + tint = MaterialTheme.colorScheme.secondary ) } } item { - Column( - modifier = Modifier - .fillMaxWidth() - .clip( - MaterialTheme.shapes.extraLarge.copy( - bottomStart = CornerSize(0), - bottomEnd = CornerSize(0) - ) - ) - .background(MaterialTheme.colorScheme.surfaceContainerLow) - .padding(24.dp) - .navigationBarsPadding(), - verticalArrangement = Arrangement.spacedBy(12.dp) + Spacer(modifier = Modifier.height(36.dp)) + HorizontalDivider( + modifier = Modifier.fillMaxWidth(), + color = MaterialTheme.colorScheme.outlineVariant + ) + } + + item { + AboutItem( + title = stringResource(id = R.string.app_version_option), + description = "Book's Story v${stringResource(id = R.string.app_version)}", ) { - AboutItem( - title = stringResource(id = R.string.app_version_option), - description = buildAnnotatedString { - append( - stringResource( - id = R.string.app_version_option_desc_1, - context.getString(R.string.app_version) - ) - ) - }, - isOnClickEnabled = false - ) - - AboutItem( - title = stringResource(id = R.string.report_bug_option), - description = null - ) { - navigateToBrowserPage( - AboutEvent.OnNavigateToBrowserPage( - page = Constants.provideIssuesPage(), - context = context - ) + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = Constants.provideReleasesPage(), + context = context ) - } - - AboutItem( - title = stringResource(id = R.string.contributors_option), - description = null - ) { - navigateToBrowserPage( - AboutEvent.OnNavigateToBrowserPage( - page = Constants.provideContributorsPage(), - context = context - ) - ) - } - - AboutItem( - title = stringResource(id = R.string.whats_new_option), - description = null - ) { - navigateToBrowserPage( - AboutEvent.OnNavigateToBrowserPage( - page = Constants.provideReleasesPage(), - context = context - ) - ) - } - - AboutItem( - title = stringResource(id = R.string.licenses_option), - description = null - ) { - navigateToLicenses() - } - - AboutItem( - title = stringResource(id = R.string.credits_option), - description = null - ) { - navigateToCredits() - } - - AboutItem( - title = stringResource(id = R.string.help_translate_option), - description = null - ) { - navigateToBrowserPage( - AboutEvent.OnNavigateToBrowserPage( - page = Constants.provideTranslationPage(), - context = context - ) - ) - } - - AboutBadges( - navigateToBrowserPage = navigateToBrowserPage ) } } + + item { + AboutItem( + title = stringResource(id = R.string.report_bug_option), + description = null + ) { + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = Constants.provideIssuesPage(), + context = context + ) + ) + } + } + + + item { + AboutItem( + title = stringResource(id = R.string.contributors_option), + description = null + ) { + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = Constants.provideContributorsPage(), + context = context + ) + ) + } + } + + item { + AboutItem( + title = stringResource(id = R.string.licenses_option), + description = null + ) { + navigateToLicenses() + } + } + + item { + AboutItem( + title = stringResource(id = R.string.credits_option), + description = null + ) { + navigateToCredits() + } + } + + item { + AboutItem( + title = stringResource(id = R.string.help_translate_option), + description = null + ) { + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = Constants.provideTranslationPage(), + context = context + ) + ) + } + } + + item { + AboutItem( + title = stringResource(id = R.string.support_development_option), + description = null + ) { + navigateToBrowserPage( + AboutEvent.OnNavigateToBrowserPage( + page = Constants.provideSupportPage(), + context = context + ) + ) + } + } + + item { + AboutBadges( + navigateToBrowserPage = navigateToBrowserPage + ) + } } } \ No newline at end of file diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutScaffold.kt b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutScaffold.kt index febbe861..9698f490 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutScaffold.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/about/AboutScaffold.kt @@ -6,7 +6,10 @@ package ua.acclorite.book_story.presentation.about +import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.navigationBars +import androidx.compose.foundation.layout.windowInsetsPadding import androidx.compose.foundation.lazy.LazyListState import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.MaterialTheme @@ -30,7 +33,8 @@ fun AboutScaffold( Scaffold( Modifier .fillMaxSize() - .nestedScroll(scrollBehavior.nestedScrollConnection), + .nestedScroll(scrollBehavior.nestedScrollConnection) + .windowInsetsPadding(WindowInsets.navigationBars), containerColor = MaterialTheme.colorScheme.surface, topBar = { AboutTopBar( diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/AboutBadgeConstants.kt b/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/AboutBadgeConstants.kt index 0787ec68..5fbda384 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/AboutBadgeConstants.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/AboutBadgeConstants.kt @@ -6,45 +6,43 @@ package ua.acclorite.book_story.presentation.core.constants -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Person import ua.acclorite.book_story.R import ua.acclorite.book_story.domain.about.Badge fun Constants.provideAboutBadges() = listOf( Badge( - id = "x", - drawable = R.drawable.x_logo, + id = "github", + drawable = R.drawable.github, imageVector = null, - contentDescription = R.string.x_content_desc, - url = "https://www.x.com/acclorite" + contentDescription = R.string.github_badge, + url = "https://www.github.com/Acclorite" ), Badge( id = "reddit", drawable = R.drawable.reddit, imageVector = null, - contentDescription = R.string.reddit_content_desc, + contentDescription = R.string.reddit_badge, url = "https://www.reddit.com/user/Acclorite/" ), Badge( id = "tryzub", drawable = R.drawable.tryzub, imageVector = null, - contentDescription = R.string.tryzub_content_desc, + contentDescription = R.string.tryzub_badge, url = null ), Badge( - id = "patreon", - drawable = R.drawable.patreon, + id = "gitlab", + drawable = R.drawable.gitlab, imageVector = null, - contentDescription = R.string.patreon_content_desc, - url = "https://www.patreon.com/Acclorite" + contentDescription = R.string.gitlab_badge, + url = "https://www.gitlab.com/Acclorite" ), Badge( - id = "github_profile", - drawable = null, - imageVector = Icons.Default.Person, - contentDescription = R.string.github_profile_content_desc, - url = "https://www.github.com/Acclorite" + id = "codeberg", + drawable = R.drawable.codeberg, + imageVector = null, + contentDescription = R.string.codeberg_badge, + url = "https://www.codeberg.org/Acclorite" ), ) \ No newline at end of file diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/LinkConstants.kt b/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/LinkConstants.kt index c2cc13a4..727f201d 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/LinkConstants.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/core/constants/LinkConstants.kt @@ -18,4 +18,7 @@ fun Constants.provideContributorsPage() = "https://github.com/Acclorite/book-story/graphs/contributors" fun Constants.provideTranslationPage() = - "https://hosted.weblate.org/projects/book-story" \ No newline at end of file + "https://hosted.weblate.org/projects/book-story" + +fun Constants.provideSupportPage() = + "https://patreon.com/Acclorite" \ No newline at end of file diff --git a/app/src/main/res/drawable/codeberg.png b/app/src/main/res/drawable/codeberg.png new file mode 100644 index 0000000000000000000000000000000000000000..3416c7823fdeac3b09ef2d46709488e04337aa21 GIT binary patch literal 2367 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 M07*qoM6N<$f~{dZGXMYp literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/gitlab.png b/app/src/main/res/drawable/gitlab.png new file mode 100644 index 0000000000000000000000000000000000000000..26f328cf7a11fb449403c04721bcfe47a8b5892d GIT binary patch literal 1799 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 R(@6jT002ovPDHLkV1i1?QtJQ! diff --git a/app/src/main/res/drawable/x_logo.png b/app/src/main/res/drawable/x_logo.png deleted file mode 100644 index 38d6b28c6f694d3e1df0fd831ebada14ae9f9d9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3059 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غير معروف حجم الشبكة إصدار التطبيق - قصة كتاب الإصدار%1$s رخص مفتوحة المصدر الأيقونات إدارة التحديثات الجديدة @@ -151,7 +150,6 @@ المركز المسار الإبلاغ عن خطأ - ما الجديد النهاية بلوتو أفكار @@ -337,7 +335,6 @@ ترتيب الفرز اليوم مربّع تأشير - ملف تعريف GitHub نقطة التحقق إلى الخلف ساوِ مُفعّل (عكسي) @@ -345,7 +342,7 @@ المستوى تصفية إعادة تعيين دليل البدء - Tryzub + Tryzub تفضيلات اللغة الملف افتح في الويب diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 486d6e47..4f862cfa 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -67,7 +67,6 @@ Různé Můžete si vybrat, které knihy chcete přidat. Název i obálku knihy si můžete změnit později. Načítání knih může trvat i několik minut. Čtečka - Co je nového Témata, barvy Font, texty, překladač Vybráno «%1$s» @@ -163,7 +162,6 @@ Velikost fontu Výška odstavce Modrá - Book\'s Story v%1$s Změnit barvu pozadí na čistě černou Hledat… Rychlost čtení diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 82763d08..09874d20 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -98,7 +98,6 @@ Zuletzt geöffnete Datei Dateigröße App-Version - Buchgeschichte v%1$s Fehler melden Wie füge ich Bücher zur Bibliothek hinzu? Gehen Sie zum @@ -174,7 +173,6 @@ Normal Kursiv Unbekannt - Was ist neu Open Source-Lizenzen Credits Slava Ukraini! @@ -215,8 +213,7 @@ Farbvoreinstellung löschen Neue Farbvorgabe erstellen Farben mischen - Dreizack - GitHub Profil + Dreizack Ziehen Filter Filter diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 95ee706d..ee2f2b08 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -141,7 +141,6 @@ Tamaño del archivo Desconocido Versión de la aplicación - Book\'s Story v%1$s ¡Gloria a Ucrania! Diseño Ir a la @@ -158,7 +157,6 @@ ¿Cómo personalizo el lector? Ruta del archivo Navegar - Novedades Informar de un error Licencias de código abierto Créditos @@ -218,8 +216,7 @@ Crear un nuevo color predeterminado Ve a los ajustes de visualización (allí lee: ¿Cómo personalizar el lector?). Puedes modificar todos los ajustes del color en el campo \"Preajuste de color\" de la subcategoría \"Colores\". Para crear un nuevo color preestablecido, haz clic en el icono \"Añadir\". Hay varias formas de modificar una especificación de color: Haciendo clic en el campo de texto, puedes cambiar el nombre de la preselección de color; moviendo los controles deslizantes, puedes cambiar los colores preestablecidos; haciendo clic en el botón del icono \"Reorganizar\", puedes reorganizar todos los colores. Si quieres borrar un color preestablecido, haz clic en el icono \"Borrar\". Ve a la configuración de Apariencia (consulta: ¿Cómo personalizo Reader?). Puede elegir qué colores preestablecidos usar en la configuración «Ajuste preestablecido de color». Haz clic en el ajuste preestablecido de color deseado para seleccionarlo; esto también cambiará tus colores en Reader. Si deseas reordenar el ajuste preestablecido de color, selecciona lo y manten presionado el botón con el ícono «Manejar»; luego, muévelo a la posición deseada. Puedes cambiar rápidamente los ajustes preestablecidos de color habilitando la configuración correspondiente en la subcategoría «Colores» de la configuración de Apariencia y luego deslizando la barra superior hacia la izquierda o la derecha en Reader para cambiar rápidamente el ajuste preestablecido de color. - Tryzub - Perfil de GitHub + Tryzub Clasificar General Tamaño de la cuadrícula diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 47459c2f..33ad01e9 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -133,9 +133,7 @@ Dernier fichier ouvert Taille du fichier Inconnu - Book\'s Story v%1$s Signaler un bug - Nouveautés Licences Open source Crédits Aidez à traduire @@ -204,8 +202,7 @@ Ouvrir en ligne Supprimer le préréglage de couleur Mélanger les couleurs - Tryzub - Profile Github + Tryzub Glisser Choisissez la catégorie dans laquelle vous souhaitez déplacer tous les livres sélectionnés (%1$s). Tous les livres sélectionnés seront déplacés vers la catégorie choisie. Ajouter des livres ? diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml index 44298d97..474fbf8c 100644 --- a/app/src/main/res/values-hi/strings.xml +++ b/app/src/main/res/values-hi/strings.xml @@ -197,8 +197,6 @@ विचारों मैं ऐप को कैसे अनुकूलित करूं? के पास जाओ - किताब की कहानी v%1$s - नया क्या है ओपन सोर्स लाइसेंस माउस फ़ॉन्ट्स diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 363d3a1c..1a545fa2 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -32,7 +32,6 @@ Impostazioni lettore File Criterio di ordinamento - Profilo GitHub Dimensioni griglia Apri sul web Eliminare libro? @@ -288,13 +287,11 @@ L\'espansore di percezione può aiutarti a leggere più velocemente. Per prima cosa, abilitalo nelle impostazioni del Lettore(vedi: Come personalizzare il Lettore?). Una volta abilitato, appariranno due linee verticali su entrambi i lati del Lettore. Per ottimizzare ulteriormente la velocità di lettura, regola il margine per creare meno spazio attorno al centro. Per utilizzarlo, concentrati sul centro dello schermo mentre consenti alla tua visione periferica di cogliere il testo sui lati. Mentre leggi, mantieni la concentrazione sul centro senza guardare direttamente i lati dopo ogni riga. L\'immagine di copertina è stata reimpostata correttamente. Idea - Cosa c\'è di nuovo Se non vedi i libri scaricati, prova ad aggiornare l\'elenco tirandolo verso il basso. Assicurati che i tuoi libri abbiano un formato di file supportato. Quindi fai clic sul libro per selezionarlo o tieni premuto per mostrarne la posizione. Dopo aver selezionato tutti i libri desiderati, fai clic sull\'icona del segno di spunta nell\'angolo in alto a destra, attendi che tutti i libri vengano caricati e fai clic su «Aggiungi». Ora dovresti vedere tutti i libri che hai aggiunto nella Contributori Puoi farlo dalle schermate Libreria, Cronologia e Sfoglia cliccando sui tre puntini nell\'angolo in alto a destra e selezionando «Impostazioni» dal menu a discesa. Quindi vedrai tutte le impostazioni disponibili per questa app. Sentiti libero di sperimentarle! Per iniziare a leggere il libro, clicca sul pulsante nell\'angolo in basso a destra del libro che vuoi leggere. Puoi anche iniziare a leggere il libro cliccando sulla sua immagine di copertina per vedere i dettagli del libro e poi cliccare sul pulsante nell\'angolo in basso a destra. I progressi verranno salvati e ripristinati automaticamente. Puoi portare le barre superiore e inferiore cliccando in qualsiasi punto dello schermo. Cliccando sul titolo del libro verrai trasferito ai dettagli del libro. Cliccando sull\'icona dell\'ingranaggio vedrai le impostazioni del lettore. Puoi usare il cursore della barra inferiore per cambiare i progressi. Vai alle impostazioni Aspetto (vedi: Come personalizzo il Lettore?). Puoi modificare tutte le impostazioni dei preset colore nella casella sotto «Preselezione Colore» nella sottocategoria «Colori». Per creare un nuovo preset colore, clicca sul pulsante icona «Aggiungi». Ci sono diversi modi per modificare un preset colore: cliccando sul campo di testo puoi cambiare il nome del preset colore, spostando i cursori puoi cambiare i colori del preset colore, cliccando sul pulsante icona «Mescola» puoi mescolare tutti i colori. Se vuoi eliminare il preset colore, clicca sul pulsante icona «Elimina». - Book\'s Story v%1$s Vai alle impostazioni Aspetto (vedi: Come personalizzo il Lettore?). Puoi scegliere quale preset di colore usare nell\'impostazione «Preselezione colore». Fai clic sul preset di colore desiderato per selezionarlo, questo cambierà anche i tuoi colori nel Lettore. Se vuoi riordinare il preset di colore, selezionalo e tieni premuto il pulsante icona «Maniglia», quindi spostalo nella posizione desiderata. Puoi cambiare rapidamente i preset di colore abilitando l\'impostazione corrispondente nella sottocategoria «Colori» delle impostazioni Aspetto, quindi scorrendo la barra superiore verso sinistra o destra nel Lettore, per cambiare rapidamente il preset di colore. Immagini Allineamento @@ -320,7 +317,7 @@ Colore di sfondo Spento Nero assoluto - Tryzub + Tryzub Assegna un nome a un predefinito… Spento Blocco orrizzontale diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 4393ebc0..dbf9c311 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -167,7 +167,6 @@ Utwórz nowe ustawienie koloru Możesz to zrobić z poziomu ekranu Biblioteka, Historia i Przeglądaj, klikając trzy kropki w prawym górnym rogu i wybierając « Ustawienia » z menu rozwijanego. Następnie zobaczysz wszystkie dostępne ustawienia tej aplikacji. Eksperymentuj z nimi! Kontynuuj czytanie - Profil GitHub Zacznij czytać książkę (patrz: Jak mogę przeczytać książkę?), A następnie przynieś górne i dolne paski, klikając w dowolnym miejscu na ekranie. Następnie kliknij ikonę zębatki w prawym górnym rogu. Spowoduje to wyświetlenie wszystkich ustawień Czytnika. Drugim sposobem jest przejście do Nazwij ustawienie… Rozmiar siatki @@ -250,7 +249,6 @@ Jak mogę dostosować czytnik? Wszystko gotowe! Obraz okładki został pomyślnie usunięty. - Co nowego Licencje open source Ustawienia Błąd diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 43b52b34..515eed9d 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -170,13 +170,12 @@ Versão do aplicativo Mais Caminho - Tryzub + Tryzub Prefêrencia de temas Ordem de classificação Continuar a ler Voltar Prefêrencias linguísticas - O que há de novo Ajude a traduzir Está tudo feito! Imagem da capa @@ -189,7 +188,6 @@ Boas vindas ao Book\'s Story! Sortear cores Apagar imagem da capa - Perfil do Github Orientação da tela Algo deu errado. Trocar imagem da capa @@ -213,7 +211,6 @@ Licenças de código aberto Sensibilidade Desativar - Book\'s Story v%1$s Nenhum aplicativo de navegador encontrado. Nenhum aplicativo para compartilhar encontrado. Nenhum aplicativo de dicionário encontrado. diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml index 0ebfc2be..d3f9e776 100644 --- a/app/src/main/res/values-ta/strings.xml +++ b/app/src/main/res/values-ta/strings.xml @@ -159,8 +159,7 @@ வண்ண முன்னமைவை நீக்கு புதிய வண்ண முன்னமைவை உருவாக்கவும் கலக்கு வண்ணங்கள் - TRYZUB - அறிவிலிமையம் சுயவிவரம் + TRYZUB சோதனைச் சாவடி மீண்டும் சோதனைச் சாவடி முன்னோக்கி பாடங்கள் @@ -249,9 +248,7 @@ கோப்பு அளவு அத்தியாயங்கள் இல்லை பாடங்கள் - புத்தகத்தின் கதை v%1$s ஒரு பிழையைப் புகாரளிக்கவும் - புதியது என்ன வரவு மொழிபெயர்க்க உதவுங்கள் பங்களிப்பாளர்கள் diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index ac56a635..1c47e51e 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -358,9 +358,7 @@ Uygulama sürümü - Book\'s Story v%1$s Hata bildir - Yenilikler Açık kaynak lisansları Katkıda bulunanlar Çeviriye yardım et @@ -569,8 +567,7 @@ Renk ön ayarını sil Yeni renk ön ayarı oluştur Renkleri karıştır - Tryzub - GitHub Profili + Tryzub Sürükle Filtrele Önceki kontrol noktası diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 41a44706..3bad3c19 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -335,15 +335,17 @@ Розділи + Версія застосунка - Book\'s Story v%1$s Повідомити про помилку - Що нового Ліцензії з відкритим кодом Заслуги Допомогти перекласти + Підтримати розробку Контриб\'ютори Слава Україні! + + Тризуб Дизайн @@ -451,8 +453,6 @@ Видалити пресет кольорів Створити новий пресет кольорів Перетасувати кольори - Тризуб - GitHub Профіль Тягнути Фільтр Чекпоінт назад diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 4f2aab88..a5661674 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -194,7 +194,6 @@ 贡献 想法 我应该如何添加书籍到库中? - Book\'s Story v%1$s 书库中 路径 图标 @@ -206,7 +205,6 @@ 翻译 如果你没有看见已下载的书可以尝试下拉刷新列表。确保你的书拥有所支持的文件格式。点击书来选择它或者按住来显示它的位置。当你选择了所有想选择的书之后,点击右上角的对勾图标,等待所有的书加载好后点击“添加”。所有你已经添加的书都应该显示在 大小 - 新内容 开源许可证 屏保 自定义亮度 @@ -294,7 +292,6 @@ 删除全部历史记录 在网页中打开 创建新颜色预设 - GitHub 配置文件 拖动 章节 更多 @@ -303,7 +300,7 @@ 木卫一 木卫三 鸟神星 - 三叉戟 + 三叉戟 取消检查点撤回 层级 章节标题对齐 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 65d1f61b..4adb84cb 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -366,15 +366,21 @@ Chapters + App version - Book\'s Story v%1$s Report a bug - What\'s new Open source licenses Credits Help translate + Support development Contributors Slava Ukraini! + + Reddit + GitHub + GitLab + Codeberg + Tryzub Design @@ -582,11 +588,6 @@ Delete color preset Create new color preset Shuffle colors - X - Reddit - Patreon - Tryzub - GitHub Profile Drag Filter Checkpoint back