Skip to content
Snippets Groups Projects
Commit d9323f3b authored by Baryshnikov Oleg's avatar Baryshnikov Oleg
Browse files

Add favorite icon to favorite characters.

parent afaf6f65
Branches main
No related tags found
No related merge requests found
......@@ -11,4 +11,6 @@ val Pink40 = Color(0xFF7D5260)
val White = Color(0xFFFFFFFF)
val DarkGray = Color(0xFF212224)
val LightGray = Color(0xFFF4F4F9)
val Gray = Color(0xFFbCBCBC)
\ No newline at end of file
val Gray = Color(0xFFbCBCBC)
val Blue = Color(0xFF1818FF)
\ No newline at end of file
......@@ -9,6 +9,7 @@ import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
......@@ -16,12 +17,16 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp
import com.bumptech.glide.integration.compose.ExperimentalGlideComposeApi
import com.bumptech.glide.integration.compose.GlideImage
import cz.fel.barysole.ackeetesttask.R
import cz.fel.barysole.ackeetesttask.model.CharacterInfo
import cz.fel.barysole.ackeetesttask.ui.screen.Screen
@OptIn(ExperimentalGlideComposeApi::class)
@Composable
......@@ -30,7 +35,9 @@ fun CharacterListItem(character: CharacterInfo, onItemSelected: (id: Long) -> Un
shape = MaterialTheme.shapes.large,
color = MaterialTheme.colorScheme.surface,
shadowElevation = 4.dp,
modifier = Modifier.padding(horizontal = 8.dp, vertical = 4.dp).clickable { onItemSelected(character.id) }
modifier = Modifier
.padding(horizontal = 8.dp, vertical = 4.dp)
.clickable { onItemSelected(character.id) }
) {
Row(
modifier = Modifier
......@@ -49,14 +56,25 @@ fun CharacterListItem(character: CharacterInfo, onItemSelected: (id: Long) -> Un
}
Spacer(modifier = Modifier.width(12.dp))
Column {
Text(
text = "${character.name}",
style = MaterialTheme.typography.titleMedium,
fontWeight = FontWeight.Bold,
maxLines = 2,
overflow = TextOverflow.Ellipsis
)
Row (verticalAlignment = Alignment.CenterVertically) {
Text(
text = "${character.name}",
style = MaterialTheme.typography.titleMedium,
fontWeight = FontWeight.Bold,
maxLines = 2,
overflow = TextOverflow.Ellipsis
)
if (character.isFavorite) {
Icon(
painterResource(R.drawable.baseline_star_24),
modifier = Modifier
.padding(horizontal = 8.dp)
.size(16.dp),
tint = Color.Blue,
contentDescription = "Arrow back icon"
)
}
}
Spacer(modifier = Modifier.height(4.dp))
character.status?.let {
Text(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment