Skip to content

Commit 9b59797

Browse files
committed
Migration to Compose Pager
1 parent 1bec91c commit 9b59797

File tree

3 files changed

+8
-19
lines changed

3 files changed

+8
-19
lines changed

gradle/libs.versions.toml

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
[versions]
2-
accompanist = "0.32.0"
32
androidDesugarJdkLibs = "2.0.3"
43
androidGradlePlugin = "8.1.1"
54
androidxActivity = "1.7.2"
@@ -48,12 +47,6 @@ googleServicesPlugins = "4.4.0"
4847
firebaseCrashlyticsPlugins = "2.9.9"
4948

5049
[libraries]
51-
accompanist-flowlayout = { group = "com.google.accompanist", name = "accompanist-flowlayout", version.ref = "accompanist" }
52-
accompanist-swiperefresh = { group = "com.google.accompanist", name = "accompanist-swiperefresh", version.ref = "accompanist" }
53-
accompanist-systemuicontroller = { group = "com.google.accompanist", name = "accompanist-systemuicontroller", version.ref = "accompanist" }
54-
accompanist-pager = { group = "com.google.accompanist", name = "accompanist-pager", version.ref = "accompanist" }
55-
accompanist-pagerindicators = { group = "com.google.accompanist", name = "accompanist-pager-indicators", version.ref = "accompanist" }
56-
accompanist-placeholder = { group = "com.google.accompanist", name = "accompanist-placeholder-material", version.ref = "accompanist" }
5750
android-desugarJdkLibs = { group = "com.android.tools", name = "desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" }
5851
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "androidxActivity" }
5952
androidx-annotation = { group = "androidx.annotation", name = "annotation", version.ref = "androidxAnnotation" }

theme/build.gradle.kts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,5 @@ dependencies {
6262
implementation(libs.androidx.activity.compose)
6363
implementation(libs.androidx.core.splashscreen)
6464

65-
implementation(libs.accompanist.pager)
66-
implementation(libs.accompanist.pagerindicators)
67-
6865
implementation(libs.markdown)
6966
}

theme/src/main/java/no/nordicsemi/android/common/theme/view/PagerView.kt

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,13 @@
3131

3232
package no.nordicsemi.android.common.theme.view
3333

34+
import androidx.compose.foundation.ExperimentalFoundationApi
3435
import androidx.compose.foundation.layout.Column
3536
import androidx.compose.foundation.layout.PaddingValues
3637
import androidx.compose.foundation.layout.fillMaxWidth
38+
import androidx.compose.foundation.pager.HorizontalPager
39+
import androidx.compose.foundation.pager.PagerState
40+
import androidx.compose.foundation.pager.rememberPagerState
3741
import androidx.compose.material3.*
3842
import androidx.compose.material3.TabRowDefaults.tabIndicatorOffset
3943
import androidx.compose.runtime.Composable
@@ -43,10 +47,6 @@ import androidx.compose.ui.Modifier
4347
import androidx.compose.ui.res.colorResource
4448
import androidx.compose.ui.unit.Dp
4549
import androidx.compose.ui.unit.dp
46-
import com.google.accompanist.pager.ExperimentalPagerApi
47-
import com.google.accompanist.pager.HorizontalPager
48-
import com.google.accompanist.pager.PagerState
49-
import com.google.accompanist.pager.rememberPagerState
5050
import kotlinx.coroutines.CoroutineScope
5151
import kotlinx.coroutines.launch
5252
import no.nordicsemi.android.common.theme.R
@@ -60,7 +60,7 @@ class PagerViewItem(
6060
val drawView: @Composable () -> Unit,
6161
)
6262

63-
@OptIn(ExperimentalPagerApi::class)
63+
@OptIn(ExperimentalFoundationApi::class)
6464
@Composable
6565
fun PagerView(
6666
viewEntity: PagerViewEntity,
@@ -79,15 +79,15 @@ fun PagerView(
7979
)
8080
}
8181

82-
@OptIn(ExperimentalPagerApi::class)
82+
@OptIn(ExperimentalFoundationApi::class)
8383
@Composable
8484
fun PagerView(
8585
viewEntity: PagerViewEntity,
8686
modifier: Modifier = Modifier,
8787
itemSpacing: Dp = 0.dp,
8888
scrollable: Boolean = true,
8989
coroutineScope: CoroutineScope,
90-
pagerState: PagerState = rememberPagerState(),
90+
pagerState: PagerState = rememberPagerState(pageCount = { viewEntity.items.size }),
9191
contentPadding: PaddingValues = PaddingValues(0.dp),
9292
verticalAlignment: Alignment.Vertical = Alignment.Top,
9393
) {
@@ -153,10 +153,9 @@ fun PagerView(
153153
}
154154

155155
HorizontalPager(
156-
count = viewEntity.items.size,
157156
state = pagerState,
158-
itemSpacing = itemSpacing,
159157
contentPadding = contentPadding,
158+
pageSpacing = itemSpacing,
160159
verticalAlignment = verticalAlignment,
161160
modifier = Modifier
162161
.weight(1f)

0 commit comments

Comments
 (0)