From 549d74a2c9aef0eb41ea18378cd29d4ab9eee2b4 Mon Sep 17 00:00:00 2001 From: MajorTanya <39014446+MajorTanya@users.noreply.github.com> Date: Tue, 5 Aug 2025 21:07:21 +0200 Subject: [PATCH] Add label to privately installed extensions (#2349) Just adds the same word as the install option ("Private" in English) next to the extension version and 18+ label. --- .../kanade/presentation/browse/ExtensionsScreen.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt b/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt index 475f0172d..e46046786 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt @@ -353,13 +353,17 @@ private fun ExtensionItemContent( horizontalArrangement = Arrangement.spacedBy(MaterialTheme.padding.extraSmall), ) { ProvideTextStyle(value = MaterialTheme.typography.bodySmall) { + var hasAlreadyShownAnElement by remember { mutableStateOf(false) } if (extension is Extension.Installed && extension.lang.isNotEmpty()) { + hasAlreadyShownAnElement = true Text( text = LocaleHelper.getSourceDisplayName(extension.lang, LocalContext.current), ) } if (extension.versionName.isNotEmpty()) { + if (hasAlreadyShownAnElement) DotSeparatorNoSpaceText() + hasAlreadyShownAnElement = true Text( text = extension.versionName, ) @@ -372,6 +376,8 @@ private fun ExtensionItemContent( else -> null } if (warning != null) { + if (hasAlreadyShownAnElement) DotSeparatorNoSpaceText() + hasAlreadyShownAnElement = true Text( text = stringResource(warning).uppercase(), color = MaterialTheme.colorScheme.error, @@ -379,6 +385,12 @@ private fun ExtensionItemContent( overflow = TextOverflow.Ellipsis, ) } + if (extension is Extension.Installed && !extension.isShared) { + if (hasAlreadyShownAnElement) DotSeparatorNoSpaceText() + Text( + text = stringResource(MR.strings.ext_installer_private), + ) + } if (!installStep.isCompleted()) { DotSeparatorNoSpaceText()