diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 626fda5..2abdc09 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -81,5 +81,7 @@ dependencies { implementation(libs.bundles.room) implementation(libs.bundles.voyager) + implementation(libs.pullrefresh) + ksp(libs.androidx.room.compiler) } \ No newline at end of file diff --git a/app/src/main/java/xyz/wingio/dimett/ui/components/RefreshIndicator.kt b/app/src/main/java/xyz/wingio/dimett/ui/components/RefreshIndicator.kt index fa8966e..6d707c6 100644 --- a/app/src/main/java/xyz/wingio/dimett/ui/components/RefreshIndicator.kt +++ b/app/src/main/java/xyz/wingio/dimett/ui/components/RefreshIndicator.kt @@ -1,18 +1,16 @@ package xyz.wingio.dimett.ui.components import androidx.compose.foundation.layout.BoxScope -import androidx.compose.material.ExperimentalMaterialApi -import androidx.compose.material.pullrefresh.PullRefreshIndicator -import androidx.compose.material.pullrefresh.PullRefreshState import androidx.compose.material3.MaterialTheme import androidx.compose.material3.surfaceColorAtElevation import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp +import dev.materii.pullrefresh.PullRefreshIndicator +import dev.materii.pullrefresh.PullRefreshState @Composable -@OptIn(ExperimentalMaterialApi::class) fun BoxScope.RefreshIndicator( refreshing: Boolean, state: PullRefreshState diff --git a/app/src/main/java/xyz/wingio/dimett/ui/screens/feed/FeedScreen.kt b/app/src/main/java/xyz/wingio/dimett/ui/screens/feed/FeedScreen.kt index 9f68fa1..4a4ec8b 100644 --- a/app/src/main/java/xyz/wingio/dimett/ui/screens/feed/FeedScreen.kt +++ b/app/src/main/java/xyz/wingio/dimett/ui/screens/feed/FeedScreen.kt @@ -9,12 +9,9 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.lazy.LazyColumn -import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Home import androidx.compose.material.icons.outlined.Home -import androidx.compose.material.pullrefresh.pullRefresh -import androidx.compose.material.pullrefresh.rememberPullRefreshState import androidx.compose.material3.Button import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.LocalContentColor @@ -32,6 +29,8 @@ import androidx.paging.compose.itemKey import cafe.adriel.voyager.koin.getScreenModel import cafe.adriel.voyager.navigator.tab.Tab import cafe.adriel.voyager.navigator.tab.TabOptions +import dev.materii.pullrefresh.pullRefresh +import dev.materii.pullrefresh.rememberPullRefreshState import xyz.wingio.dimett.R import xyz.wingio.dimett.ui.components.RefreshIndicator import xyz.wingio.dimett.ui.components.Text @@ -52,7 +51,6 @@ class FeedTab : Tab { override fun Content() = Screen() @Composable - @OptIn(ExperimentalMaterialApi::class) private fun Screen( viewModel: FeedViewModel = getScreenModel() ) { diff --git a/app/src/main/java/xyz/wingio/dimett/ui/widgets/attachments/SingleGifAttachment.kt b/app/src/main/java/xyz/wingio/dimett/ui/widgets/attachments/SingleGifAttachment.kt index f09443a..4dc51ee 100644 --- a/app/src/main/java/xyz/wingio/dimett/ui/widgets/attachments/SingleGifAttachment.kt +++ b/app/src/main/java/xyz/wingio/dimett/ui/widgets/attachments/SingleGifAttachment.kt @@ -35,11 +35,9 @@ import androidx.media3.exoplayer.ExoPlayer import androidx.media3.exoplayer.source.ProgressiveMediaSource import androidx.media3.ui.AspectRatioFrameLayout import androidx.media3.ui.PlayerView -import coil.annotation.ExperimentalCoilApi import xyz.wingio.dimett.rest.dto.post.MediaAttachment import xyz.wingio.dimett.ui.components.Text -@kotlin.OptIn(ExperimentalCoilApi::class) @Composable @OptIn(androidx.media3.common.util.UnstableApi::class) fun SingleGifAttachment( diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b6b0b7a..0ef32e1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -38,7 +38,6 @@ coil-compose = { group = "io.coil-kt", name = "coil-compose", version.ref = "coi coil-gif = { group = "io.coil-kt", name = "coil-gif", version.ref = "coil" } compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "compose-bom" } compose-image-blurhash = { group = "com.github.orlando-dev-code", name = "compose-image-blurhash", version.ref = "compose-image-blurhash" } -compose-material = { group = "androidx.compose.material", name = "material" } compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" } compose-material3 = { group = "androidx.compose.material3", name = "material3" } compose-ui = { group = "androidx.compose.ui", name = "ui" } @@ -54,6 +53,7 @@ ktor-client-content-negotiation = { group = "io.ktor", name = "ktor-client-conte ktor-client-core = { group = "io.ktor", name = "ktor-client-core", version.ref = "ktor" } ktor-client-logging = { group = "io.ktor", name = "ktor-client-logging", version.ref = "ktor" } ktor-serialization-kotlinx-json = { group = "io.ktor", name = "ktor-serialization-kotlinx-json", version.ref = "ktor" } +pullrefresh = { group = "dev.materii.pullrefresh", name = "pullrefresh", version = "1.1.0" } simpleast-core = { group = "com.github.MateriiApps.SimplerAST", name = "simpleast-core", version.ref = "simpleast-core" } voyager-koin = { group = "cafe.adriel.voyager", name = "voyager-koin", version.ref = "voyager" } voyager-navigator = { group = "cafe.adriel.voyager", name = "voyager-navigator", version.ref = "voyager" } @@ -64,7 +64,7 @@ voyager-transitions = { group = "cafe.adriel.voyager", name = "voyager-transitio accompanist = ["accompanist-systemuicontroller", "accompanist-pager", "accompanist-pager-indicators"] androidx = ["core-ktx", "androidx-browser", "androidx-lifecycle-runtime-ktx", "androidx-activity-compose", "androidx-paging-compose", "androidx-emoji2"] coil = ["coil-compose", "coil", "coil-gif"] -compose = ["compose-ui", "compose-ui-graphics", "compose-ui-tooling-preview", "compose-material3", "compose-material", "compose-material-icons-extended"] +compose = ["compose-ui", "compose-ui-graphics", "compose-ui-tooling-preview", "compose-material3", "compose-material-icons-extended"] github = ["compose-image-blurhash", "simpleast-core"] koin = ["koin-core", "koin-androidx-compose", "koin-android"] kotlinx = ["kotlinx-datetime"]