From 2e9124c52d7b42ad14173e710415b2cc55a168ca Mon Sep 17 00:00:00 2001 From: tarsin Date: Thu, 16 Mar 2023 19:49:10 +0800 Subject: [PATCH] Restore galleryDetail rating --- .../ehviewer/ui/scene/GalleryDetailScene.kt | 28 +++++++++---------- .../ehviewer/ui/widget/GalleryInfoCard.kt | 2 +- .../hippo/ehviewer/ui/widget/RatingWidget.kt | 8 +++++- .../hippo/ehviewer/widget/SimpleRatingView.kt | 4 +-- 4 files changed, 23 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt index fb16a1b8d..736d1755e 100755 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.kt @@ -133,6 +133,7 @@ import com.hippo.ehviewer.ui.GalleryInfoBottomSheet import com.hippo.ehviewer.ui.MainActivity import com.hippo.ehviewer.ui.scene.GalleryListScene.Companion.toStartArgs import com.hippo.ehviewer.ui.widget.GalleryDetailHeaderCard +import com.hippo.ehviewer.ui.widget.GalleryDetailRating import com.hippo.ehviewer.widget.GalleryRatingBar import com.hippo.ehviewer.widget.GalleryRatingBar.OnUserRateListener import com.hippo.text.URLImageGetter @@ -681,7 +682,8 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl Column( modifier = Modifier .padding(horizontal = dimensionResource(id = R.dimen.keyline_margin)) - .padding(top = dimensionResource(id = R.dimen.keyline_margin)) + .padding(top = dimensionResource(id = R.dimen.keyline_margin)), + horizontalAlignment = Alignment.CenterHorizontally ) { if (!composeBindingGD?.newerVersions.isNullOrEmpty()) { Box(contentAlignment = Alignment.Center) { @@ -739,6 +741,10 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl onClick = ::showArchiveDialog ) } + Spacer(modifier = Modifier.size(dimensionResource(id = R.dimen.keyline_margin))) + GalleryDetailRating(rating = composeBindingGD?.rating ?: 0f) + Spacer(modifier = Modifier.size(dimensionResource(id = R.dimen.keyline_margin))) + Text(text = ratingText) } } } @@ -753,6 +759,8 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl } } + private var ratingText by mutableStateOf("") + private fun doShareGallery() { galleryDetailUrl?.let { AppHelper.share(requireActivity(), it) } } @@ -869,13 +877,7 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl setTitle(EhUtils.getSuitableTitle(gd)) updateDownloadText() updateFavoriteDrawable() - /* - binding.content.actions.run { - ratingText.text = getAllRatingText(gd.rating, gd.ratingCount) - rating.rating = gd.rating - - } - */ + ratingText = getAllRatingText(gd.rating, gd.ratingCount) torrentText = resources.getString(R.string.torrent_count, gd.torrentCount) bindTags(gd.tags) bindComments(gd.comments!!.comments) @@ -1376,13 +1378,9 @@ class GalleryDetailScene : CollapsingToolbarScene(), View.OnClickListener, Downl // Update UI _binding ?: return - /* - binding.content.actions.run { - ratingText.text = getAllRatingText(result.rating, result.ratingCount) - rating.rating = result.rating - } - - */ + ratingText = getAllRatingText(result.rating, result.ratingCount) + composeBindingGD?.rating = result.rating + composeBindingGD = composeBindingGD } private fun onModifyFavoritesSuccess(addOrRemove: Boolean) { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/widget/GalleryInfoCard.kt b/app/src/main/java/com/hippo/ehviewer/ui/widget/GalleryInfoCard.kt index 83acfbc0d..38ee5d582 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/widget/GalleryInfoCard.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/widget/GalleryInfoCard.kt @@ -71,7 +71,7 @@ fun ListInfoCard( overflow = TextOverflow.Ellipsis, style = MaterialTheme.typography.labelLarge ) - SimpleRatingWidget(rating = info.rating) + GalleryListCardRating(rating = info.rating) val categoryColor = EhUtils.getCategoryColor(info.category) val categoryText = EhUtils.getCategory(info.category).uppercase(Locale.ROOT) Text( diff --git a/app/src/main/java/com/hippo/ehviewer/ui/widget/RatingWidget.kt b/app/src/main/java/com/hippo/ehviewer/ui/widget/RatingWidget.kt index 861a851b7..f9bd907ec 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/widget/RatingWidget.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/widget/RatingWidget.kt @@ -14,6 +14,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.dimensionResource import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp import com.hippo.ehviewer.R import kotlin.math.roundToInt @@ -57,10 +58,15 @@ fun MetaRatingWidget(rating: Float, ratingSize: Dp, ratingInterval: Dp) { } @Composable -fun SimpleRatingWidget(rating: Float) { +fun GalleryListCardRating(rating: Float) { MetaRatingWidget( rating = rating, ratingSize = dimensionResource(id = R.dimen.rating_size), ratingInterval = dimensionResource(id = R.dimen.rating_interval) ) } + +@Composable +fun GalleryDetailRating(rating: Float) { + MetaRatingWidget(rating = rating, ratingSize = 48.dp, ratingInterval = 12.dp) +} diff --git a/app/src/main/java/com/hippo/ehviewer/widget/SimpleRatingView.kt b/app/src/main/java/com/hippo/ehviewer/widget/SimpleRatingView.kt index 5202603ce..a040d8418 100644 --- a/app/src/main/java/com/hippo/ehviewer/widget/SimpleRatingView.kt +++ b/app/src/main/java/com/hippo/ehviewer/widget/SimpleRatingView.kt @@ -8,7 +8,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.setValue import androidx.compose.ui.platform.AbstractComposeView import com.google.accompanist.themeadapter.material3.Mdc3Theme -import com.hippo.ehviewer.ui.widget.SimpleRatingWidget +import com.hippo.ehviewer.ui.widget.GalleryListCardRating class SimpleRatingView @JvmOverloads constructor( context: Context, @@ -20,7 +20,7 @@ class SimpleRatingView @JvmOverloads constructor( @Composable override fun Content() { Mdc3Theme { - SimpleRatingWidget(rating) + GalleryListCardRating(rating) } } }