diff --git a/appnav/src/main/kotlin/io/element/android/appnav/LoggedInEventProcessor.kt b/appnav/src/main/kotlin/io/element/android/appnav/LoggedInEventProcessor.kt index c07a2d72e9..3a8b243be6 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/LoggedInEventProcessor.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/LoggedInEventProcessor.kt @@ -21,7 +21,7 @@ import io.element.android.libraries.designsystem.utils.SnackbarMessage import io.element.android.libraries.matrix.api.room.RoomMembershipObserver import io.element.android.libraries.matrix.api.verification.SessionVerificationService import io.element.android.libraries.matrix.api.verification.VerificationFlowState -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Job import kotlinx.coroutines.flow.drop @@ -48,13 +48,13 @@ class LoggedInEventProcessor @Inject constructor( fun observeEvents(coroutineScope: CoroutineScope) { observingJob = coroutineScope.launch { displayLeftRoomMessage.onEach { - displayMessage(R.string.common_current_user_left_room) + displayMessage(CommonStrings.common_current_user_left_room) }.launchIn(this) displayVerificationSuccessfulMessage .drop(1) .onEach { - displayMessage(R.string.common_verification_complete) + displayMessage(CommonStrings.common_verification_complete) }.launchIn(this) } } diff --git a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/components/SearchUserBar.kt b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/components/SearchUserBar.kt index 9729b53fae..fdcd8900b4 100644 --- a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/components/SearchUserBar.kt +++ b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/components/SearchUserBar.kt @@ -40,7 +40,7 @@ import io.element.android.libraries.designsystem.theme.components.SearchBar import io.element.android.libraries.designsystem.theme.components.SearchBarResultState import io.element.android.libraries.matrix.api.user.MatrixUser import io.element.android.libraries.matrix.ui.components.SelectedUsersList -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings import io.element.android.libraries.usersearch.api.UserSearchResult import kotlinx.collections.immutable.ImmutableList @@ -54,7 +54,7 @@ fun SearchUserBar( isMultiSelectionEnabled: Boolean, modifier: Modifier = Modifier, showBackButton: Boolean = true, - placeHolderTitle: String = stringResource(R.string.common_search_for_someone), + placeHolderTitle: String = stringResource(CommonStrings.common_search_for_someone), onActiveChanged: (Boolean) -> Unit = {}, onTextChanged: (String) -> Unit = {}, onUserSelected: (MatrixUser) -> Unit = {}, diff --git a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/root/CreateRoomRootNode.kt b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/root/CreateRoomRootNode.kt index 4089be0fa2..5a2dde7661 100644 --- a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/root/CreateRoomRootNode.kt +++ b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/root/CreateRoomRootNode.kt @@ -35,7 +35,7 @@ import io.element.android.libraries.di.SessionScope import io.element.android.libraries.matrix.api.MatrixClient import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.permalink.PermalinkBuilder -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings import io.element.android.services.analytics.api.AnalyticsService import timber.log.Timber @@ -91,9 +91,9 @@ class CreateRoomRootNode @AssistedInject constructor( startSharePlainTextIntent( context = context, activityResultLauncher = null, - chooserTitle = context.getString(R.string.action_invite_friends), - text = context.getString(R.string.invite_friends_text, appName, permalink), - extraTitle = context.getString(R.string.invite_friends_rich_title, appName), + chooserTitle = context.getString(CommonStrings.action_invite_friends), + text = context.getString(CommonStrings.invite_friends_text, appName, permalink), + extraTitle = context.getString(CommonStrings.invite_friends_rich_title, appName), noActivityFoundMessage = context.getString(io.element.android.libraries.androidutils.R.string.error_no_compatible_app_found) ) }.onFailure { diff --git a/features/leaveroom/api/src/main/kotlin/io/element/android/features/leaveroom/api/LeaveRoomView.kt b/features/leaveroom/api/src/main/kotlin/io/element/android/features/leaveroom/api/LeaveRoomView.kt index 9a3a86a94c..ffd751c699 100644 --- a/features/leaveroom/api/src/main/kotlin/io/element/android/features/leaveroom/api/LeaveRoomView.kt +++ b/features/leaveroom/api/src/main/kotlin/io/element/android/features/leaveroom/api/LeaveRoomView.kt @@ -31,7 +31,6 @@ import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.matrix.api.core.RoomId -import io.element.android.libraries.ui.strings.R import io.element.android.libraries.ui.strings.CommonStrings @Composable @@ -77,7 +76,7 @@ private fun LeaveRoomConfirmationDialog( ) { ConfirmationDialog( content = stringResource(text), - submitText = stringResource(R.string.action_leave), + submitText = stringResource(CommonStrings.action_leave), onSubmitClicked = { eventSink(LeaveRoomEvent.LeaveRoom(roomId)) }, onDismiss = { eventSink(LeaveRoomEvent.HideConfirmation) }, ) diff --git a/features/location/api/src/main/kotlin/io/element/android/features/location/api/internal/StaticMapPlaceholder.kt b/features/location/api/src/main/kotlin/io/element/android/features/location/api/internal/StaticMapPlaceholder.kt index d39bfd7d15..3a6a6536c0 100644 --- a/features/location/api/src/main/kotlin/io/element/android/features/location/api/internal/StaticMapPlaceholder.kt +++ b/features/location/api/src/main/kotlin/io/element/android/features/location/api/internal/StaticMapPlaceholder.kt @@ -40,7 +40,6 @@ import io.element.android.libraries.designsystem.theme.components.CircularProgre import io.element.android.libraries.designsystem.theme.components.Icon import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.features.location.api.R -import io.element.android.libraries.ui.strings.R as StringsR @Composable internal fun StaticMapPlaceholder( diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt index 8e2558770d..898db2a829 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt @@ -77,9 +77,9 @@ import io.element.android.libraries.designsystem.utils.LogCompositions import io.element.android.libraries.designsystem.utils.rememberSnackbarHostState import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.timeline.item.event.EventSendState +import io.element.android.libraries.ui.strings.CommonStrings import kotlinx.collections.immutable.ImmutableList import timber.log.Timber -import io.element.android.libraries.ui.strings.R as StringsR @OptIn(ExperimentalLayoutApi::class, ExperimentalMaterial3Api::class) @Composable @@ -195,7 +195,7 @@ private fun AttachmentStateView( is AttachmentsState.Previewing -> LaunchedEffect(state) { onPreviewAttachments(state.attachments) } - is AttachmentsState.Sending -> ProgressDialog(text = stringResource(id = StringsR.string.common_loading)) + is AttachmentsState.Sending -> ProgressDialog(text = stringResource(id = CommonStrings.common_loading)) } } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt index 8eca2c3313..7388dd665b 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt @@ -41,8 +41,7 @@ import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.theme.components.Scaffold import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.theme.components.TextButton -import io.element.android.libraries.ui.strings.R -import io.element.android.libraries.ui.strings.R as StringsR +import io.element.android.libraries.ui.strings.CommonStrings @Composable fun AttachmentsPreviewView( @@ -92,7 +91,7 @@ private fun AttachmentSendStateView( ) { when (sendActionState) { is Async.Loading -> { - ProgressDialog(text = stringResource(id = R.string.common_loading)) + ProgressDialog(text = stringResource(id = CommonStrings.common_loading)) } is Async.Failure -> { @@ -151,10 +150,10 @@ private fun AttachmentsPreviewBottomActions( modifier = modifier, ) { TextButton(onClick = onCancelClicked) { - Text(stringResource(id = StringsR.string.action_cancel)) + Text(stringResource(id = CommonStrings.action_cancel)) } TextButton(onClick = onSendClicked) { - Text(stringResource(id = StringsR.string.action_send)) + Text(stringResource(id = CommonStrings.action_send)) } } } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/error/ErrorFormatter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/error/ErrorFormatter.kt index 92dcd21b8e..7ef86e4817 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/error/ErrorFormatter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/error/ErrorFormatter.kt @@ -17,14 +17,14 @@ package io.element.android.features.messages.impl.attachments.preview.error import io.element.android.libraries.mediaupload.api.MediaPreProcessor -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings fun sendAttachmentError( throwable: Throwable ): Int { return if (throwable is MediaPreProcessor.Failure) { - R.string.screen_media_upload_preview_error_failed_processing + CommonStrings.screen_media_upload_preview_error_failed_processing } else { - R.string.screen_media_upload_preview_error_failed_sending + CommonStrings.screen_media_upload_preview_error_failed_sending } } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineEventTimestampView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineEventTimestampView.kt index 530f62a188..15dde3d85b 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineEventTimestampView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineEventTimestampView.kt @@ -44,7 +44,7 @@ import io.element.android.libraries.designsystem.theme.ElementTheme import io.element.android.libraries.designsystem.theme.components.Icon import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.matrix.api.timeline.item.event.EventSendState -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @Composable fun TimelineEventTimestampView( @@ -70,7 +70,7 @@ fun TimelineEventTimestampView( ) { if (isMessageEdited) { Text( - stringResource(R.string.common_edited_suffix), + stringResource(CommonStrings.common_edited_suffix), style = ElementTextStyles.Regular.caption2, color = tint ?: MaterialTheme.colorScheme.secondary, ) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/messagesummary/MessageSummaryFormatterImpl.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/messagesummary/MessageSummaryFormatterImpl.kt index b924a9e7b4..c7bae0c995 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/messagesummary/MessageSummaryFormatterImpl.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/messagesummary/MessageSummaryFormatterImpl.kt @@ -30,7 +30,7 @@ import io.element.android.features.messages.impl.timeline.model.event.TimelineIt import io.element.android.features.messages.impl.timeline.model.event.TimelineItemVideoContent import io.element.android.libraries.di.ApplicationContext import io.element.android.libraries.di.RoomScope -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings import javax.inject.Inject @ContributesBinding(RoomScope::class) @@ -42,12 +42,12 @@ class MessageSummaryFormatterImpl @Inject constructor( is TimelineItemTextBasedContent -> event.content.body is TimelineItemStateContent -> event.content.body is TimelineItemProfileChangeContent -> event.content.body - is TimelineItemEncryptedContent -> context.getString(R.string.common_unable_to_decrypt) - is TimelineItemRedactedContent -> context.getString(R.string.common_message_removed) - is TimelineItemUnknownContent -> context.getString(R.string.common_unsupported_event) - is TimelineItemImageContent -> context.getString(R.string.common_image) - is TimelineItemVideoContent -> context.getString(R.string.common_video) - is TimelineItemFileContent -> context.getString(R.string.common_file) + is TimelineItemEncryptedContent -> context.getString(CommonStrings.common_unable_to_decrypt) + is TimelineItemRedactedContent -> context.getString(CommonStrings.common_message_removed) + is TimelineItemUnknownContent -> context.getString(CommonStrings.common_unsupported_event) + is TimelineItemImageContent -> context.getString(CommonStrings.common_image) + is TimelineItemVideoContent -> context.getString(CommonStrings.common_video) + is TimelineItemFileContent -> context.getString(CommonStrings.common_file) } } } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt index 027b3cfd1d..adbe2ad7e3 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt @@ -32,7 +32,7 @@ import io.element.android.libraries.designsystem.preview.ElementPreviewDark import io.element.android.libraries.designsystem.preview.ElementPreviewLight import io.element.android.libraries.featureflag.ui.FeatureListView import io.element.android.libraries.featureflag.ui.model.FeatureUiModel -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @Composable fun DeveloperSettingsView( @@ -44,7 +44,7 @@ fun DeveloperSettingsView( PreferenceView( modifier = modifier, onBackPressed = onBackPressed, - title = stringResource(id = R.string.common_developer_options) + title = stringResource(id = CommonStrings.common_developer_options) ) { // Note: this is OK to hardcode strings in this debug screen. PreferenceCategory(title = "Feature flags") { diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/search/RoomListSearch.kt b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/search/RoomListSearch.kt index f70c46c18b..f277fe80be 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/search/RoomListSearch.kt +++ b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/search/RoomListSearch.kt @@ -64,7 +64,7 @@ import io.element.android.libraries.designsystem.theme.components.TextField import io.element.android.libraries.designsystem.theme.components.TopAppBar import io.element.android.libraries.designsystem.utils.copy import io.element.android.libraries.matrix.api.core.RoomId -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @Composable internal fun RoomListSearchResultView( @@ -150,7 +150,7 @@ internal fun RoomListSearchResultContent( }) { Icon( imageVector = Icons.Default.Close, - contentDescription = stringResource(R.string.action_cancel) + contentDescription = stringResource(CommonStrings.action_cancel) ) } } diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/SearchBar.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/SearchBar.kt index 76b4ebae16..3fd572232a 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/SearchBar.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/SearchBar.kt @@ -47,7 +47,7 @@ import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementThemedPreview import io.element.android.libraries.designsystem.preview.PreviewGroup import io.element.android.libraries.designsystem.theme.LocalColors -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @OptIn(ExperimentalMaterial3Api::class) @Composable @@ -100,7 +100,7 @@ fun SearchBar( IconButton(onClick = { onQueryChange("") }) { Icon( imageVector = Icons.Default.Close, - contentDescription = stringResource(R.string.action_clear), + contentDescription = stringResource(CommonStrings.action_clear), ) } } @@ -110,7 +110,7 @@ fun SearchBar( { Icon( imageVector = Icons.Default.Search, - contentDescription = stringResource(R.string.action_search), + contentDescription = stringResource(CommonStrings.action_search), tint = MaterialTheme.colorScheme.tertiary, ) } @@ -135,7 +135,7 @@ fun SearchBar( Spacer(Modifier.size(80.dp)) Text( - text = stringResource(R.string.common_no_results), + text = stringResource(CommonStrings.common_no_results), textAlign = TextAlign.Center, color = MaterialTheme.colorScheme.tertiary, modifier = Modifier.fillMaxWidth() diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt index 4bcae94c1e..945df3df7a 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt @@ -34,7 +34,7 @@ import io.element.android.libraries.matrix.api.timeline.item.event.StateContent import io.element.android.libraries.matrix.api.timeline.item.event.StickerContent import io.element.android.libraries.matrix.api.timeline.item.event.UnableToDecryptContent import io.element.android.libraries.matrix.api.timeline.item.event.UnknownContent -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings import io.element.android.services.toolbox.api.strings.StringProvider import javax.inject.Inject @@ -71,7 +71,7 @@ class DefaultTimelineEventFormatter @Inject constructor( if (buildMeta.isDebuggable) { error("You should not use this formatter for this event: $event") } - sp.getString(R.string.common_unsupported_event) + sp.getString(CommonStrings.common_unsupported_event) } } } diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/UnresolvedUserRow.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/UnresolvedUserRow.kt index 617b0f944d..809636679d 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/UnresolvedUserRow.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/UnresolvedUserRow.kt @@ -48,7 +48,7 @@ import io.element.android.libraries.designsystem.theme.components.Icon import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.theme.noFontPadding import io.element.android.libraries.matrix.ui.model.getAvatarData -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @Composable fun UnresolvedUserRow( @@ -94,7 +94,7 @@ fun UnresolvedUserRow( ) Text( - text = stringResource(R.string.common_invite_unknown_profile), + text = stringResource(CommonStrings.common_invite_unknown_profile), color = MaterialTheme.colorScheme.secondary, fontSize = 12.sp, lineHeight = 16.sp, diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/media/AvatarAction.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/media/AvatarAction.kt index 624eb7c607..0a178f2c25 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/media/AvatarAction.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/media/AvatarAction.kt @@ -23,7 +23,7 @@ import androidx.compose.material.icons.outlined.PhotoCamera import androidx.compose.material.icons.outlined.PhotoLibrary import androidx.compose.runtime.Immutable import androidx.compose.ui.graphics.vector.ImageVector -import io.element.android.libraries.ui.strings.R +import io.element.android.libraries.ui.strings.CommonStrings @Immutable sealed class AvatarAction( @@ -31,7 +31,7 @@ sealed class AvatarAction( val icon: ImageVector, val destructive: Boolean = false, ) { - object TakePhoto : AvatarAction(titleResId = R.string.action_take_photo, icon = Icons.Outlined.PhotoCamera) - object ChoosePhoto : AvatarAction(titleResId = R.string.action_choose_photo, icon = Icons.Outlined.PhotoLibrary) - object Remove : AvatarAction(titleResId = R.string.action_remove, icon = Icons.Outlined.Delete, destructive = true) + object TakePhoto : AvatarAction(titleResId = CommonStrings.action_take_photo, icon = Icons.Outlined.PhotoCamera) + object ChoosePhoto : AvatarAction(titleResId = CommonStrings.action_choose_photo, icon = Icons.Outlined.PhotoLibrary) + object Remove : AvatarAction(titleResId = CommonStrings.action_remove, icon = Icons.Outlined.Delete, destructive = true) }