Move onLongClick card to dummy hint holder
This commit is contained in:
1 parent
f81d9de2c6
commit
578aff7dea
3 files changed
+92
-24
No files matched your search
@@ -16,6 +16,20 @@ private fun crystalCardBorder(): BorderStroke {
|
||||
return remember { originBorder.copy(brush = SolidColor(Color.Transparent)) }
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun CrystalCard(
|
||||
onClick: () -> Unit,
|
||||
onLongClick: () -> Unit,
|
||||
modifier: Modifier = Modifier,
|
||||
content: @Composable ColumnScope.() -> Unit,
|
||||
) = OutlinedCard(
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
modifier = modifier,
|
||||
border = crystalCardBorder(),
|
||||
content = content,
|
||||
)
|
||||
|
||||
@Composable
|
||||
fun CrystalCard(
|
||||
onClick: () -> Unit,
|
||||
@@ -27,13 +41,3 @@ fun CrystalCard(
|
||||
border = crystalCardBorder(),
|
||||
content = content,
|
||||
)
|
||||
|
||||
@Composable
|
||||
fun CrystalCard(
|
||||
modifier: Modifier = Modifier,
|
||||
content: @Composable ColumnScope.() -> Unit,
|
||||
) = OutlinedCard(
|
||||
modifier = modifier,
|
||||
border = crystalCardBorder(),
|
||||
content = content,
|
||||
)
|
||||
@@ -0,0 +1,66 @@
|
||||
package com.hippo.ehviewer.ui.widget
|
||||
|
||||
import androidx.compose.foundation.BorderStroke
|
||||
import androidx.compose.foundation.combinedClickable
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.ColumnScope
|
||||
import androidx.compose.material3.Card
|
||||
import androidx.compose.material3.CardColors
|
||||
import androidx.compose.material3.CardDefaults
|
||||
import androidx.compose.material3.CardElevation
|
||||
import androidx.compose.material3.ElevatedCard
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Shape
|
||||
|
||||
// This file holds widgets ** Compose Material 3 ** library SHOULD but NOT implemented yet.
|
||||
|
||||
@Composable
|
||||
fun OutlinedCard(
|
||||
onClick: () -> Unit,
|
||||
onLongClick: () -> Unit,
|
||||
modifier: Modifier = Modifier,
|
||||
shape: Shape = CardDefaults.outlinedShape,
|
||||
colors: CardColors = CardDefaults.outlinedCardColors(),
|
||||
elevation: CardElevation = CardDefaults.outlinedCardElevation(),
|
||||
border: BorderStroke = CardDefaults.outlinedCardBorder(),
|
||||
content: @Composable ColumnScope.() -> Unit,
|
||||
) = Card(
|
||||
modifier = modifier,
|
||||
shape = shape,
|
||||
colors = colors,
|
||||
elevation = elevation,
|
||||
border = border,
|
||||
) {
|
||||
Column(
|
||||
modifier = Modifier.combinedClickable(
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
),
|
||||
content = content,
|
||||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ElevatedCard(
|
||||
onClick: () -> Unit,
|
||||
onLongClick: () -> Unit,
|
||||
modifier: Modifier = Modifier,
|
||||
shape: Shape = CardDefaults.elevatedShape,
|
||||
colors: CardColors = CardDefaults.elevatedCardColors(),
|
||||
elevation: CardElevation = CardDefaults.elevatedCardElevation(),
|
||||
content: @Composable ColumnScope.() -> Unit,
|
||||
) = ElevatedCard(
|
||||
modifier = modifier,
|
||||
shape = shape,
|
||||
colors = colors,
|
||||
elevation = elevation,
|
||||
) {
|
||||
Column(
|
||||
modifier = Modifier.combinedClickable(
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
),
|
||||
content = content,
|
||||
)
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.hippo.ehviewer.ui.widget
|
||||
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.combinedClickable
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -19,7 +18,6 @@ import androidx.compose.material.icons.filled.Download
|
||||
import androidx.compose.material.icons.filled.Favorite
|
||||
import androidx.compose.material3.Badge
|
||||
import androidx.compose.material3.Card
|
||||
import androidx.compose.material3.ElevatedCard
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.ProvideTextStyle
|
||||
@@ -46,13 +44,12 @@ fun GalleryInfoListItem(
|
||||
isInFavScene: Boolean = false,
|
||||
showPages: Boolean = false,
|
||||
) {
|
||||
CrystalCard(modifier = modifier) {
|
||||
Row(
|
||||
modifier = Modifier.combinedClickable(
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
),
|
||||
) {
|
||||
CrystalCard(
|
||||
modifier = modifier,
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
) {
|
||||
Row {
|
||||
Card {
|
||||
EhAsyncCropThumb(
|
||||
model = info.thumb,
|
||||
@@ -132,14 +129,15 @@ fun GalleryInfoGridItem(
|
||||
val aspect = (info.thumbWidth.toFloat() / info.thumbHeight).coerceIn(0.33F, 1.5F)
|
||||
val color = EhUtils.getCategoryColor(info.category)
|
||||
val simpleLang = info.simpleLanguage
|
||||
ElevatedCard(modifier = modifier) {
|
||||
ElevatedCard(
|
||||
modifier = modifier,
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
) {
|
||||
Box {
|
||||
EhAsyncThumb(
|
||||
model = info.thumb,
|
||||
modifier = Modifier.aspectRatio(aspect).fillMaxWidth().combinedClickable(
|
||||
onClick = onClick,
|
||||
onLongClick = onLongClick,
|
||||
),
|
||||
modifier = Modifier.aspectRatio(aspect).fillMaxWidth(),
|
||||
contentScale = ContentScale.Crop,
|
||||
)
|
||||
val container = Color(color)
|
||||
|
||||
Reference in new issue
Block a user