ui: use stringValue to get resources inside app module

This will not compile but still adding this so that we can revert the hack in-future and get it running correctly.

Signed-off-by: Aditya Wasan <adityawasan55@gmail.com>
This commit is contained in:
Aditya Wasan 2021-03-24 01:05:43 +05:30
parent 282da93630
commit 13b3abdcd4
No known key found for this signature in database
GPG key ID: 6D6DF3BF15DE79B5
2 changed files with 13 additions and 9 deletions

View file

@ -24,7 +24,6 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -37,6 +36,8 @@ import dev.msfjarvis.lobsters.data.local.SavedPost
import dev.msfjarvis.lobsters.ui.theme.LobstersTheme import dev.msfjarvis.lobsters.ui.theme.LobstersTheme
import dev.msfjarvis.lobsters.ui.theme.titleColor import dev.msfjarvis.lobsters.ui.theme.titleColor
import dev.msfjarvis.lobsters.util.IconResource import dev.msfjarvis.lobsters.util.IconResource
import dev.msfjarvis.lobsters.utils.StringEnum
import dev.msfjarvis.lobsters.utils.stringValue
val TEST_POST = SavedPost( val TEST_POST = SavedPost(
shortId = "zqyydb", shortId = "zqyydb",
@ -141,8 +142,8 @@ fun SubmitterAvatar(
) { ) {
CoilImage( CoilImage(
data = "${LobstersApi.BASE_URL}/$avatarUrl", data = "${LobstersApi.BASE_URL}/$avatarUrl",
contentDescription = stringResource( contentDescription = stringValue(
R.string.avatar_content_description, StringEnum.AvatarContentDescription,
name, name,
), ),
fadeIn = true, fadeIn = true,
@ -159,7 +160,7 @@ fun SubmitterNameText(
name: String, name: String,
) { ) {
Text( Text(
text = stringResource(id = R.string.submitted_by, name), text = stringValue(StringEnum.SubmittedBy, name),
modifier = Modifier modifier = Modifier
.padding(start = 4.dp), .padding(start = 4.dp),
) )
@ -179,10 +180,12 @@ fun SaveButton(
.then(modifier), .then(modifier),
) { ) {
Crossfade(targetState = isSaved) { saved -> Crossfade(targetState = isSaved) { saved ->
// Using if (saved) ... else ... throws an IllegalArgumentException
val contentDescriptionEnum = if (saved) StringEnum.RemoveFromSavedPosts else StringEnum.AddToSavedPosts
IconResource( IconResource(
resourceId = if (saved) R.drawable.ic_favorite_24px else R.drawable.ic_favorite_border_24px, resourceId = if (saved) R.drawable.ic_favorite_24px else R.drawable.ic_favorite_border_24px,
tint = MaterialTheme.colors.secondary, tint = MaterialTheme.colors.secondary,
contentDescription = stringResource(if (saved) R.string.remove_from_saved_posts else R.string.add_to_saved_posts), contentDescription = stringValue(contentDescriptionEnum),
) )
} }
} }
@ -202,7 +205,7 @@ fun CommentsButton(
IconResource( IconResource(
resourceId = R.drawable.ic_insert_comment_24px, resourceId = R.drawable.ic_insert_comment_24px,
tint = MaterialTheme.colors.secondary, tint = MaterialTheme.colors.secondary,
contentDescription = stringResource(R.string.open_comments), contentDescription = stringValue(StringEnum.OpenComments),
) )
} }
} }

View file

@ -15,13 +15,14 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import dev.msfjarvis.lobsters.R import dev.msfjarvis.lobsters.R
import dev.msfjarvis.lobsters.data.local.SavedPost import dev.msfjarvis.lobsters.data.local.SavedPost
import dev.msfjarvis.lobsters.ui.urllauncher.LocalUrlLauncher import dev.msfjarvis.lobsters.ui.urllauncher.LocalUrlLauncher
import dev.msfjarvis.lobsters.util.IconResource import dev.msfjarvis.lobsters.util.IconResource
import dev.msfjarvis.lobsters.util.asZonedDateTime import dev.msfjarvis.lobsters.util.asZonedDateTime
import dev.msfjarvis.lobsters.utils.StringEnum
import dev.msfjarvis.lobsters.utils.stringValue
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
@OptIn(ExperimentalFoundationApi::class) @OptIn(ExperimentalFoundationApi::class)
@ -46,9 +47,9 @@ fun SavedPosts(
R.drawable.ic_favorite_border_24px, R.drawable.ic_favorite_border_24px,
tint = Color(0xFFD97373), tint = Color(0xFFD97373),
modifier = Modifier.padding(16.dp), modifier = Modifier.padding(16.dp),
contentDescription = stringResource(R.string.add_to_saved_posts), contentDescription = stringValue(StringEnum.AddToSavedPosts),
) )
Text(stringResource(R.string.no_saved_posts)) Text(stringValue(StringEnum.NoSavedPost))
} }
} else { } else {
LazyColumn( LazyColumn(