fix: 无图片 / 视频时仍占位

This commit is contained in:
HuanCheng65 2023-10-08 00:25:38 +08:00
parent 4139f1a3f9
commit af3ce0a9a2
No known key found for this signature in database
GPG Key ID: 5EC9DD60A32C7360
1 changed files with 126 additions and 120 deletions

View File

@ -438,8 +438,8 @@ private fun ThreadMedia(
val mediaCount = remember(medias) { val mediaCount = remember(medias) {
medias.size medias.size
} }
val hasMedia = remember(mediaCount) { mediaCount > 0 } val hasPhoto = remember(mediaCount) { mediaCount > 0 }
val isSingleMedia = remember(mediaCount) { mediaCount == 1 } val isSinglePhoto = remember(mediaCount) { mediaCount == 1 }
val hideMedia = context.appPreferences.hideMedia val hideMedia = context.appPreferences.hideMedia
@ -450,6 +450,11 @@ private fun ThreadMedia(
else 0.5f else 0.5f
} }
val hasMedia = remember(hasPhoto, videoInfo) {
hasPhoto || videoInfo != null
}
if (hasMedia) {
Box(modifier = modifier) { Box(modifier = modifier) {
if (videoInfo != null) { if (videoInfo != null) {
if (hideMedia) { if (hideMedia) {
@ -491,12 +496,12 @@ private fun ThreadMedia(
) )
} }
} }
} else if (hasMedia) { } else if (hasPhoto) {
val mediaWidthFraction = remember(isSingleMedia, singleMediaFraction) { val mediaWidthFraction = remember(isSinglePhoto, singleMediaFraction) {
if (isSingleMedia) singleMediaFraction else 1f if (isSinglePhoto) singleMediaFraction else 1f
} }
val mediaAspectRatio = remember(isSingleMedia) { val mediaAspectRatio = remember(isSinglePhoto) {
if (isSingleMedia) 2f else 3f if (isSinglePhoto) 2f else 3f
} }
if (hideMedia) { if (hideMedia) {
val photoViewData = remember( val photoViewData = remember(
@ -513,7 +518,7 @@ private fun ThreadMedia(
MediaPlaceholder( MediaPlaceholder(
icon = { icon = {
Icon( Icon(
imageVector = if (isSingleMedia) Icons.Rounded.Photo else Icons.Rounded.PhotoLibrary, imageVector = if (isSinglePhoto) Icons.Rounded.Photo else Icons.Rounded.PhotoLibrary,
contentDescription = stringResource(id = R.string.desc_photo) contentDescription = stringResource(id = R.string.desc_photo)
) )
}, },
@ -579,6 +584,7 @@ private fun ThreadMedia(
} }
} }
} }
}
} }
@Composable @Composable
@ -826,7 +832,7 @@ fun FeedCard(
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
onClickReply: (PostInfoList) -> Unit = {}, onClickReply: (PostInfoList) -> Unit = {},
onClickUser: (id: Long) -> Unit = {}, onClickUser: (id: Long) -> Unit = {},
onClickForum: (SimpleForum) -> Unit = {}, onClickForum: (name: String) -> Unit = {},
onClickOriginThread: (OriginThreadInfo) -> Unit = {}, onClickOriginThread: (OriginThreadInfo) -> Unit = {},
) { ) {
Card( Card(
@ -874,7 +880,7 @@ fun FeedCard(
ThreadForumInfo( ThreadForumInfo(
forumName = item.get { forum_name }, forumName = item.get { forum_name },
forumAvatar = null, forumAvatar = null,
onClick = {} onClick = { onClickForum(item.get { forum_name }) }
) )
}, },
action = { action = {