Skip to content

Commit

Permalink
fix, onTransform added, version change.
Browse files Browse the repository at this point in the history
  • Loading branch information
commandiron committed Oct 13, 2022
1 parent e9535ef commit da9b531
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ class MainActivity : ComponentActivity() {
initialHorizontalPadding = 64.dp,
initialWidth = 240.dp,
targetWidth = maxWidth,
mainContent = { page, isExpanded ->
mainContent = { page ->
AsyncImage(
modifier = Modifier.fillMaxSize(),
model = ImageRequest.Builder(LocalContext.current)
Expand Down Expand Up @@ -86,6 +86,9 @@ class MainActivity : ComponentActivity() {
title = films[page].title,
overview = films[page].overview
)
},
onTransform = { isExpanded ->
println(isExpanded)
}
)
}
Expand Down
2 changes: 1 addition & 1 deletion expandable-horizontal-pager/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ afterEvaluate {

groupId = 'com.git.luolix.topmandiron'
artifactId = 'expandable-horizontal-pager'
version = '1.0.7'
version = '1.0.8'
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,14 @@ fun ExpandableHorizontalPager(
targetWidth: Dp = 300.dp,
aspectRatio: Float = 2 / 3f,
durationMillis: Int = 400,
mainContent: @Composable ColumnScope.(page: Int, isExpanded: Boolean) -> Unit,
overMainContentCollapsed: @Composable ColumnScope.(page: Int) -> Unit,
overMainContentExpanded: @Composable ColumnScope.(page: Int) -> Unit,
mainContent: @Composable ColumnScope.(page: Int) -> Unit,
overMainContentCollapsed: @Composable ColumnScope.(page: Int) -> Unit = {},
overMainContentExpanded: @Composable ColumnScope.(page: Int) -> Unit = {},
hiddenContentBoxHeight: Dp = Dp.Unspecified,
hiddenContentContainerColor: Color = Color.Black,
hiddenContentContentColor: Color = Color.White,
hiddenContent: @Composable ColumnScope.(page: Int) -> Unit,
onTransform: (isExpanded: Boolean) -> Unit = {}
) {
var transformState by rememberSaveable { mutableStateOf(ExpandablePagerTransformState.INITIAL) }

Expand Down Expand Up @@ -183,6 +184,8 @@ fun ExpandableHorizontalPager(
.fillMaxSize(),
Alignment.Center
) {
val isExpanded = transformState == ExpandablePagerTransformState.TARGET ||
transformState == ExpandablePagerTransformState.INITIAL_TO_TARGET
Card(
modifier = Modifier
.width(contentWidth)
Expand Down Expand Up @@ -230,7 +233,10 @@ fun ExpandableHorizontalPager(
.draggable(
orientation = Orientation.Vertical,
state = rememberDraggableState {},
onDragStarted = { expand(this@BoxWithConstraints.maxHeight) }
onDragStarted = {
onTransform(!isExpanded)
expand(this@BoxWithConstraints.maxHeight)
}
),
contentAlignment = Alignment.Center
) {
Expand Down Expand Up @@ -277,21 +283,21 @@ fun ExpandableHorizontalPager(
orientation = Orientation.Vertical,
state = rememberDraggableState {},
onDragStarted = {
onTransform(!isExpanded)
expand(maxHeight)
}
)
.clickable(
enabled = currentPage == page,
) {
onTransform(!isExpanded)
expand(maxHeight)
},
shape = RoundedCornerShape(cornerSize)
) {
Box() {
val isExpanded = transformState == ExpandablePagerTransformState.TARGET ||
transformState == ExpandablePagerTransformState.INITIAL_TO_TARGET
Column() {
mainContent(page, isExpanded)
mainContent(page)
}
Column() {
AnimatedVisibility(
Expand Down

0 comments on commit da9b531

Please sign in to comment.