mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-17 23:47:02 +05:30
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:
parent
282da93630
commit
13b3abdcd4
2 changed files with 13 additions and 9 deletions
|
@ -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),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue