Merge pull request #35 from msfjarvis/update-followups

This commit is contained in:
Harsh Shandilya 2020-10-03 02:08:10 +05:30 committed by GitHub
commit f71bd27a03
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 34 additions and 30 deletions

View file

@ -7,6 +7,7 @@ import androidx.compose.foundation.Text
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumnForIndexed import androidx.compose.foundation.lazy.LazyColumnForIndexed
import androidx.compose.material.Scaffold import androidx.compose.material.Scaffold
import androidx.compose.material.TopAppBar import androidx.compose.material.TopAppBar
@ -18,6 +19,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.setContent import androidx.compose.ui.platform.setContent
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import dev.msfjarvis.lobsters.api.LobstersApi import dev.msfjarvis.lobsters.api.LobstersApi
import dev.msfjarvis.lobsters.compose.utils.IconResource import dev.msfjarvis.lobsters.compose.utils.IconResource
@ -68,7 +70,10 @@ fun LobstersApp(
Text(stringResource(R.string.nothing_to_see_here)) Text(stringResource(R.string.nothing_to_see_here))
} }
} else { } else {
LazyColumnForIndexed(state.value) { index, item -> LazyColumnForIndexed(
items = state.value,
modifier = Modifier.padding(horizontal = 8.dp)
) { index, item ->
if (lastIndex == index) { if (lastIndex == index) {
viewModel.getMorePosts() viewModel.getMorePosts()
} }

View file

@ -6,12 +6,12 @@ import androidx.compose.foundation.background
import androidx.compose.foundation.border import androidx.compose.foundation.border
import androidx.compose.foundation.clickable import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumnFor import androidx.compose.foundation.lazy.LazyColumnFor
import androidx.compose.foundation.lazy.LazyItemScope import androidx.compose.foundation.lazy.LazyItemScope
import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.ListItem
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
@ -28,41 +28,40 @@ fun LazyItemScope.LobstersItem(
linkOpenAction: (LobstersPost) -> Unit, linkOpenAction: (LobstersPost) -> Unit,
commentOpenAction: (LobstersPost) -> Unit, commentOpenAction: (LobstersPost) -> Unit,
) { ) {
ListItem( Column(
modifier = modifier.padding(horizontal = 8.dp) modifier = modifier
.fillParentMaxWidth() .fillParentMaxWidth()
.clickable( .clickable(
onClick = { linkOpenAction.invoke(post) }, onClick = { linkOpenAction.invoke(post) },
onLongClick = { commentOpenAction.invoke(post) } onLongClick = { commentOpenAction.invoke(post) }
), ),
text = { ) {
Text( Text(
text = post.title, text = post.title,
color = Color(0xFF7395D9), color = Color(0xFF7395D9),
fontWeight = FontWeight.Bold, fontWeight = FontWeight.Bold,
modifier = Modifier.padding(top = 4.dp) modifier = Modifier.padding(top = 4.dp)
) )
Row( Row(
modifier = Modifier.padding(vertical = 8.dp), modifier = Modifier.padding(vertical = 8.dp),
horizontalArrangement = Arrangement.spacedBy(8.dp), horizontalArrangement = Arrangement.spacedBy(8.dp),
) { ) {
post.tags.take(4).forEach { tag -> post.tags.take(4).forEach { tag ->
Text( Text(
text = tag, text = tag,
modifier = Modifier modifier = Modifier
.border(BorderStroke(1.dp, Color.Gray)) .border(BorderStroke(1.dp, Color.Gray))
.background(Color(0xFFFFFCD7), RoundedCornerShape(4.dp)) .background(Color(0xFFFFFCD7), RoundedCornerShape(4.dp))
.padding(vertical = 2.dp, horizontal = 4.dp), .padding(vertical = 2.dp, horizontal = 4.dp),
color = Color.DarkGray, color = Color.DarkGray,
) )
}
} }
Text(
text = "submitted by ${post.submitterUser.username}",
modifier = Modifier.padding(bottom = 4.dp),
)
} }
) Text(
text = "submitted by ${post.submitterUser.username}",
modifier = Modifier.padding(bottom = 4.dp),
)
}
} }
@Composable @Composable