From ebf99eda55349f2d34faf4531d5280834fe812b0 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sat, 17 May 2025 22:49:44 +0800 Subject: [PATCH] Migrate to M3 Expressive loading indicator --- .../kotlin/com/hippo/ehviewer/ui/main/GalleryList.kt | 2 +- .../hippo/ehviewer/ui/screen/GalleryCommentsScreen.kt | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/main/GalleryList.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/main/GalleryList.kt index 73f2a84c4..c384c7f1c 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/main/GalleryList.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/main/GalleryList.kt @@ -223,7 +223,7 @@ fun GalleryList( } } - PullToRefreshDefaults.Indicator( + PullToRefreshDefaults.LoadingIndicator( state = refreshState, isRefreshing = isRefreshing, modifier = Modifier.align(Alignment.TopCenter).padding(top = contentPadding.calculateTopPadding()) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/screen/GalleryCommentsScreen.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/screen/GalleryCommentsScreen.kt index 95ef259cc..52dd2e568 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/screen/GalleryCommentsScreen.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/screen/GalleryCommentsScreen.kt @@ -47,6 +47,8 @@ import androidx.compose.material3.TextButton import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBarDefaults import androidx.compose.material3.pulltorefresh.PullToRefreshBox +import androidx.compose.material3.pulltorefresh.PullToRefreshDefaults +import androidx.compose.material3.pulltorefresh.rememberPullToRefreshState import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.LaunchedEffect @@ -297,6 +299,7 @@ fun AnimatedVisibilityScope.GalleryCommentsScreen(gid: Long, navigator: Destinat val keylineMargin = dimensionResource(id = R.dimen.keyline_margin) var editTextMeasured by remember { mutableStateOf(MinimumContentPaddingEditText) } var isRefreshing by remember { mutableStateOf(false) } + val refreshState = rememberPullToRefreshState() PullToRefreshBox( isRefreshing = isRefreshing, onRefresh = { @@ -309,6 +312,14 @@ fun AnimatedVisibilityScope.GalleryCommentsScreen(gid: Long, navigator: Destinat } }, modifier = Modifier.fillMaxSize().imePadding().padding(top = paddingValues.calculateTopPadding()), + state = refreshState, + indicator = { + PullToRefreshDefaults.LoadingIndicator( + modifier = Modifier.align(Alignment.TopCenter), + isRefreshing = isRefreshing, + state = refreshState, + ) + }, ) { val additionalPadding = if (commenting) { editTextMeasured