mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-14 21:07:04 +05:30
refactor: remove explicit calls to rememberVectorPainter
This commit is contained in:
parent
5e7b79eb89
commit
c6ea1182e0
7 changed files with 25 additions and 30 deletions
|
@ -30,7 +30,6 @@ import androidx.compose.runtime.getValue
|
|||
import androidx.compose.runtime.produceState
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.vector.rememberVectorPainter
|
||||
import androidx.compose.ui.platform.LocalUriHandler
|
||||
import androidx.compose.ui.text.AnnotatedString
|
||||
import androidx.compose.ui.text.SpanStyle
|
||||
|
@ -116,7 +115,7 @@ private fun PostLink(
|
|||
Row(modifier = Modifier.padding(16.dp), horizontalArrangement = Arrangement.spacedBy(8.dp)) {
|
||||
NetworkImage(
|
||||
url = linkMetadata.faviconUrl,
|
||||
placeholder = rememberVectorPainter(Icons.Filled.Public),
|
||||
placeholder = Icons.Filled.Public,
|
||||
contentDescription = "",
|
||||
modifier = Modifier.size(24.dp),
|
||||
)
|
||||
|
|
|
@ -46,7 +46,6 @@ import androidx.compose.runtime.setValue
|
|||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.graphics.vector.rememberVectorPainter
|
||||
import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.text.AnnotatedString
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
|
@ -154,7 +153,7 @@ internal fun Submitter(
|
|||
) {
|
||||
NetworkImage(
|
||||
url = avatarUrl,
|
||||
placeholder = rememberVectorPainter(Icons.Filled.AccountCircle),
|
||||
placeholder = Icons.Filled.AccountCircle,
|
||||
contentDescription = contentDescription,
|
||||
modifier = Modifier.requiredSize(24.dp).clip(CircleShape),
|
||||
)
|
||||
|
@ -171,10 +170,7 @@ private fun SaveButton(
|
|||
Crossfade(targetState = isSaved, label = "save-button") { saved ->
|
||||
Box(modifier = modifier.padding(12.dp)) {
|
||||
Icon(
|
||||
painter =
|
||||
rememberVectorPainter(
|
||||
if (saved) Icons.Filled.Favorite else Icons.Outlined.FavoriteBorder
|
||||
),
|
||||
imageVector = if (saved) Icons.Filled.Favorite else Icons.Outlined.FavoriteBorder,
|
||||
tint = MaterialTheme.colorScheme.secondary,
|
||||
contentDescription = if (saved) "Remove from saved posts" else "Add to saved posts",
|
||||
modifier = Modifier.align(Alignment.Center),
|
||||
|
@ -207,7 +203,7 @@ private fun CommentsButton(
|
|||
},
|
||||
) {
|
||||
Icon(
|
||||
painter = rememberVectorPainter(Icons.Outlined.Comment),
|
||||
imageVector = Icons.Outlined.Comment,
|
||||
tint = MaterialTheme.colorScheme.secondary,
|
||||
contentDescription = "Open comments",
|
||||
modifier = Modifier.align(Alignment.Center),
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright © 2021-2022 Harsh Shandilya.
|
||||
* Copyright © 2021-2023 Harsh Shandilya.
|
||||
* Use of this source code is governed by an MIT-style
|
||||
* license that can be found in the LICENSE file or at
|
||||
* https://opensource.org/licenses/MIT.
|
||||
|
@ -8,21 +8,23 @@ package dev.msfjarvis.claw.common.ui
|
|||
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.painter.Painter
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.graphics.vector.rememberVectorPainter
|
||||
import coil.compose.AsyncImage
|
||||
|
||||
@Composable
|
||||
internal fun NetworkImage(
|
||||
url: String?,
|
||||
placeholder: Painter,
|
||||
placeholder: ImageVector,
|
||||
contentDescription: String,
|
||||
modifier: Modifier = Modifier,
|
||||
) {
|
||||
val painter = rememberVectorPainter(placeholder)
|
||||
AsyncImage(
|
||||
model = url,
|
||||
placeholder = placeholder,
|
||||
error = placeholder,
|
||||
fallback = placeholder,
|
||||
placeholder = painter,
|
||||
error = painter,
|
||||
fallback = painter,
|
||||
contentDescription = contentDescription,
|
||||
modifier = modifier,
|
||||
)
|
||||
|
|
|
@ -24,7 +24,6 @@ import androidx.compose.runtime.produceState
|
|||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.graphics.vector.rememberVectorPainter
|
||||
import androidx.compose.ui.unit.dp
|
||||
import dev.msfjarvis.claw.common.NetworkState
|
||||
import dev.msfjarvis.claw.common.NetworkState.Error
|
||||
|
@ -92,7 +91,7 @@ private fun UserProfileInternal(
|
|||
) {
|
||||
NetworkImage(
|
||||
url = "https://lobste.rs/${user.avatarUrl}",
|
||||
placeholder = rememberVectorPainter(Icons.Filled.AccountCircle),
|
||||
placeholder = Icons.Filled.AccountCircle,
|
||||
contentDescription = "Avatar of ${user.username}",
|
||||
modifier = Modifier.requiredSize(120.dp).clip(CircleShape),
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue