Skip to content

Commit da9b531

Browse files
committed
fix, onTransform added, version change.
1 parent e9535ef commit da9b531

File tree

3 files changed

+18
-9
lines changed

3 files changed

+18
-9
lines changed

app/src/main/java/com/commandiron/expandablehorizontalpagercompose/MainActivity.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class MainActivity : ComponentActivity() {
5757
initialHorizontalPadding = 64.dp,
5858
initialWidth = 240.dp,
5959
targetWidth = maxWidth,
60-
mainContent = { page, isExpanded ->
60+
mainContent = { page ->
6161
AsyncImage(
6262
modifier = Modifier.fillMaxSize(),
6363
model = ImageRequest.Builder(LocalContext.current)
@@ -86,6 +86,9 @@ class MainActivity : ComponentActivity() {
8686
title = films[page].title,
8787
overview = films[page].overview
8888
)
89+
},
90+
onTransform = { isExpanded ->
91+
println(isExpanded)
8992
}
9093
)
9194
}

expandable-horizontal-pager/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ afterEvaluate {
5757

5858
groupId = 'com.github.commandiron'
5959
artifactId = 'expandable-horizontal-pager'
60-
version = '1.0.7'
60+
version = '1.0.8'
6161
}
6262
}
6363
}

expandable-horizontal-pager/src/main/java/com/commandiron/expandable_horizontal_pager/ExpandableHorizontalPager.kt

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,14 @@ fun ExpandableHorizontalPager(
4444
targetWidth: Dp = 300.dp,
4545
aspectRatio: Float = 2 / 3f,
4646
durationMillis: Int = 400,
47-
mainContent: @Composable ColumnScope.(page: Int, isExpanded: Boolean) -> Unit,
48-
overMainContentCollapsed: @Composable ColumnScope.(page: Int) -> Unit,
49-
overMainContentExpanded: @Composable ColumnScope.(page: Int) -> Unit,
47+
mainContent: @Composable ColumnScope.(page: Int) -> Unit,
48+
overMainContentCollapsed: @Composable ColumnScope.(page: Int) -> Unit = {},
49+
overMainContentExpanded: @Composable ColumnScope.(page: Int) -> Unit = {},
5050
hiddenContentBoxHeight: Dp = Dp.Unspecified,
5151
hiddenContentContainerColor: Color = Color.Black,
5252
hiddenContentContentColor: Color = Color.White,
5353
hiddenContent: @Composable ColumnScope.(page: Int) -> Unit,
54+
onTransform: (isExpanded: Boolean) -> Unit = {}
5455
) {
5556
var transformState by rememberSaveable { mutableStateOf(ExpandablePagerTransformState.INITIAL) }
5657

@@ -183,6 +184,8 @@ fun ExpandableHorizontalPager(
183184
.fillMaxSize(),
184185
Alignment.Center
185186
) {
187+
val isExpanded = transformState == ExpandablePagerTransformState.TARGET ||
188+
transformState == ExpandablePagerTransformState.INITIAL_TO_TARGET
186189
Card(
187190
modifier = Modifier
188191
.width(contentWidth)
@@ -230,7 +233,10 @@ fun ExpandableHorizontalPager(
230233
.draggable(
231234
orientation = Orientation.Vertical,
232235
state = rememberDraggableState {},
233-
onDragStarted = { expand(this@BoxWithConstraints.maxHeight) }
236+
onDragStarted = {
237+
onTransform(!isExpanded)
238+
expand(this@BoxWithConstraints.maxHeight)
239+
}
234240
),
235241
contentAlignment = Alignment.Center
236242
) {
@@ -277,21 +283,21 @@ fun ExpandableHorizontalPager(
277283
orientation = Orientation.Vertical,
278284
state = rememberDraggableState {},
279285
onDragStarted = {
286+
onTransform(!isExpanded)
280287
expand(maxHeight)
281288
}
282289
)
283290
.clickable(
284291
enabled = currentPage == page,
285292
) {
293+
onTransform(!isExpanded)
286294
expand(maxHeight)
287295
},
288296
shape = RoundedCornerShape(cornerSize)
289297
) {
290298
Box() {
291-
val isExpanded = transformState == ExpandablePagerTransformState.TARGET ||
292-
transformState == ExpandablePagerTransformState.INITIAL_TO_TARGET
293299
Column() {
294-
mainContent(page, isExpanded)
300+
mainContent(page)
295301
}
296302
Column() {
297303
AnimatedVisibility(

0 commit comments

Comments
 (0)