Skip to content

Commit bba01c9

Browse files
committed
Prepare versions 2.6.0-beta03-A|2.6.0-alpha04-MP
1 parent fb0be24 commit bba01c9

File tree

8 files changed

+38
-47
lines changed

8 files changed

+38
-47
lines changed

buildSrc/src/main/java/com/kizitonwose/calendar/buildsrc/Build.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ object Config {
1212
}
1313

1414
object Version {
15-
val android = "2.5.3"
16-
val multiplatfrom = "2.5.3"
15+
val android = "2.6.0-beta03"
16+
val multiplatfrom = "2.6.0-alpha04"
1717

1818
fun String.isNoPublish() = this == VERSION_NO_PUBLISH
1919
}

compose-multiplatform/library/src/commonMain/kotlin/com/kizitonwose/calendar/compose/CalendarDefaults.kt

+3-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import androidx.compose.foundation.ExperimentalFoundationApi
44
import androidx.compose.foundation.gestures.FlingBehavior
55
import androidx.compose.foundation.gestures.ScrollableDefaults
66
import androidx.compose.foundation.gestures.snapping.SnapLayoutInfoProvider
7-
import androidx.compose.foundation.gestures.snapping.SnapPositionInLayout
7+
import androidx.compose.foundation.gestures.snapping.SnapPosition
88
import androidx.compose.foundation.gestures.snapping.rememberSnapFlingBehavior
99
import androidx.compose.foundation.lazy.LazyListState
1010
import androidx.compose.runtime.Composable
@@ -22,7 +22,7 @@ internal object CalendarDefaults {
2222
@Composable
2323
private fun pagedFlingBehavior(state: LazyListState): FlingBehavior {
2424
val snappingLayout = remember(state) {
25-
val provider = SnapLayoutInfoProvider(state, CalendarSnapPositionInLayout())
25+
val provider = SnapLayoutInfoProvider(state, SnapPosition.Start)
2626
CalendarSnapLayoutInfoProvider(provider)
2727
}
2828
return rememberSnapFlingBehavior(snappingLayout)
@@ -46,9 +46,5 @@ private fun CalendarSnapLayoutInfoProvider(
4646
* In compose 1.3, the default was single page snapping (zero), but this changed
4747
* in compose 1.4 to decayed page snapping which is not great for calendar usage.
4848
*/
49-
override fun calculateApproachOffset(initialVelocity: Float): Float = 0f
49+
override fun calculateApproachOffset(velocity: Float, decayOffset: Float): Float = 0f
5050
}
51-
52-
@OptIn(ExperimentalFoundationApi::class)
53-
@Suppress("FunctionName")
54-
private fun CalendarSnapPositionInLayout() = SnapPositionInLayout { _, _, _, _, _ -> 0 }

compose/src/main/java/com/kizitonwose/calendar/compose/CalendarDefaults.kt

+3-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import androidx.compose.foundation.ExperimentalFoundationApi
44
import androidx.compose.foundation.gestures.FlingBehavior
55
import androidx.compose.foundation.gestures.ScrollableDefaults
66
import androidx.compose.foundation.gestures.snapping.SnapLayoutInfoProvider
7-
import androidx.compose.foundation.gestures.snapping.SnapPositionInLayout
7+
import androidx.compose.foundation.gestures.snapping.SnapPosition
88
import androidx.compose.foundation.gestures.snapping.rememberSnapFlingBehavior
99
import androidx.compose.foundation.lazy.LazyListState
1010
import androidx.compose.runtime.Composable
@@ -22,7 +22,7 @@ internal object CalendarDefaults {
2222
@Composable
2323
private fun pagedFlingBehavior(state: LazyListState): FlingBehavior {
2424
val snappingLayout = remember(state) {
25-
val provider = SnapLayoutInfoProvider(state, CalendarSnapPositionInLayout())
25+
val provider = SnapLayoutInfoProvider(state, SnapPosition.Start)
2626
CalendarSnapLayoutInfoProvider(provider)
2727
}
2828
return rememberSnapFlingBehavior(snappingLayout)
@@ -46,9 +46,5 @@ private fun CalendarSnapLayoutInfoProvider(
4646
* In compose 1.3, the default was single page snapping (zero), but this changed
4747
* in compose 1.4 to decayed page snapping which is not great for calendar usage.
4848
*/
49-
override fun calculateApproachOffset(initialVelocity: Float): Float = 0f
49+
override fun calculateApproachOffset(velocity: Float, decayOffset: Float): Float = 0f
5050
}
51-
52-
@OptIn(ExperimentalFoundationApi::class)
53-
@Suppress("FunctionName")
54-
private fun CalendarSnapPositionInLayout() = SnapPositionInLayout { _, _, _, _, _ -> 0 }

gradle/libs.versions.toml

+12-11
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
[versions]
22
agp = "8.5.1"
33
kotlin = "2.0.0"
4-
compose = "1.6.8"
4+
composeAndroid = "1.7.0-beta06"
5+
composeMultiplatform = "1.7.0-alpha02"
56
espresso = "3.6.1"
67
junit5 = "5.10.3"
78
kotlinxSerialization = "1.7.1"
@@ -30,18 +31,18 @@ test-junit4 = { module = "junit:junit", version = "4.13.2" }
3031
test-junit5-api = { module = "org.junit.jupiter:junit-jupiter-api", version.ref = "junit5" }
3132
test-junit5-engine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref = "junit5" }
3233

33-
compose-ui-ui = { module = "androidx.compose.ui:ui", version.ref = "compose" }
34-
compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "compose" }
35-
compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose" }
36-
compose-runtime = { module = "androidx.compose.runtime:runtime", version.ref = "compose" }
37-
compose-material3 = { module = "androidx.compose.material3:material3", version = "1.2.1" }
34+
compose-ui-ui = { module = "androidx.compose.ui:ui", version.ref = "composeAndroid" }
35+
compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "composeAndroid" }
36+
compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "composeAndroid" }
37+
compose-runtime = { module = "androidx.compose.runtime:runtime", version.ref = "composeAndroid" }
38+
compose-material3 = { module = "androidx.compose.material3:material3", version = "1.3.0-beta05" }
3839
compose-activity = { module = "androidx.activity:activity-compose", version = "1.9.1" }
39-
compose-navigation = { module = "androidx.navigation:navigation-compose", version = "2.7.7" }
40+
compose-navigation = { module = "androidx.navigation:navigation-compose", version = "2.8.0-beta06" }
4041

41-
compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4", version.ref = "compose" }
42-
compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest", version.ref = "compose" }
42+
compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4", version.ref = "composeAndroid" }
43+
compose-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest", version.ref = "composeAndroid" }
4344

44-
jetbrains-compose-navigation = { module = "org.jetbrains.androidx.navigation:navigation-compose", version = "2.7.0-alpha07" }
45+
jetbrains-compose-navigation = { module = "org.jetbrains.androidx.navigation:navigation-compose", version = "2.8.0-alpha08" }
4546

4647
[plugins]
4748
androidApplication = { id = "com.android.application", version.ref = "agp" }
@@ -56,5 +57,5 @@ bcv = "org.jetbrains.kotlinx.binary-compatibility-validator:0.15.1"
5657

5758
# KMM
5859
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
59-
jetbrainsCompose = { id = "org.jetbrains.compose", version = "1.6.11" }
60+
jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" }
6061
kotlinSerialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }

sample/src/main/java/com/kizitonwose/calendar/sample/compose/Example10Page.kt

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package com.kizitonwose.calendar.sample.compose
22

3-
import androidx.compose.foundation.ExperimentalFoundationApi
43
import androidx.compose.foundation.background
5-
import androidx.compose.foundation.gestures.snapping.SnapLayoutInfoProvider
6-
import androidx.compose.foundation.gestures.snapping.SnapPositionInLayout
4+
import androidx.compose.foundation.gestures.snapping.SnapPosition
75
import androidx.compose.foundation.gestures.snapping.rememberSnapFlingBehavior
86
import androidx.compose.foundation.layout.Arrangement
97
import androidx.compose.foundation.layout.Box
@@ -149,7 +147,6 @@ fun Example10Page(adjacentYears: Long = 50) {
149147
}
150148
}
151149

152-
@OptIn(ExperimentalFoundationApi::class)
153150
@Composable
154151
private fun YearHeader(
155152
startYear: Year,
@@ -166,7 +163,7 @@ private fun YearHeader(
166163
.wrapContentHeight()
167164
.background(headerBackground),
168165
state = headerState,
169-
flingBehavior = rememberSnapFlingBehavior(SnapLayoutInfoProvider(headerState, SnapPositionInLayout.CenterToCenter)),
166+
flingBehavior = rememberSnapFlingBehavior(lazyListState = headerState, SnapPosition.Center),
170167
contentPadding = PaddingValues(horizontal = if (isTablet) 40.dp else 10.dp),
171168
) {
172169
items(count = startYear.yearsUntil(endYear).toInt()) { index ->

sample/src/main/java/com/kizitonwose/calendar/sample/compose/Example3Page.kt

+15-12
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,12 @@ import androidx.compose.foundation.layout.wrapContentWidth
1919
import androidx.compose.foundation.lazy.LazyColumn
2020
import androidx.compose.foundation.lazy.LazyItemScope
2121
import androidx.compose.foundation.lazy.items
22+
import androidx.compose.material.ripple.RippleAlpha
2223
import androidx.compose.material3.ExperimentalMaterial3Api
2324
import androidx.compose.material3.HorizontalDivider
2425
import androidx.compose.material3.LocalContentColor
26+
import androidx.compose.material3.LocalRippleConfiguration
27+
import androidx.compose.material3.RippleConfiguration
2528
import androidx.compose.material3.Text
2629
import androidx.compose.runtime.Composable
2730
import androidx.compose.runtime.CompositionLocalProvider
@@ -125,7 +128,7 @@ fun Example3Page() {
125128
state = state,
126129
dayContent = { day ->
127130
@OptIn(ExperimentalMaterial3Api::class)
128-
// CompositionLocalProvider(LocalRippleConfiguration provides Example3RippleConfiguration) {
131+
CompositionLocalProvider(LocalRippleConfiguration provides Example3RippleConfiguration) {
129132
val colors = if (day.position == DayPosition.MonthDate) {
130133
flights[day.date].orEmpty().map { colorResource(it.color) }
131134
} else {
@@ -138,7 +141,7 @@ fun Example3Page() {
138141
) { clicked ->
139142
selection = clicked
140143
}
141-
// }
144+
}
142145
},
143146
monthHeader = {
144147
MonthHeader(
@@ -319,16 +322,16 @@ private fun AirportInformation(airport: Airport, isDeparture: Boolean) {
319322

320323
// The default dark them ripple is too bright so we tone it down.
321324
@OptIn(ExperimentalMaterial3Api::class)
322-
//private val Example3RippleConfiguration = RippleConfiguration(
323-
// color = Color.Gray,
324-
// // Copied from RippleTheme#DarkThemeRippleAlpha
325-
// rippleAlpha = RippleAlpha(
326-
// pressedAlpha = 0.10f,
327-
// focusedAlpha = 0.12f,
328-
// draggedAlpha = 0.08f,
329-
// hoveredAlpha = 0.04f,
330-
// ),
331-
//)
325+
private val Example3RippleConfiguration = RippleConfiguration(
326+
color = Color.Gray,
327+
// Copied from RippleTheme#DarkThemeRippleAlpha
328+
rippleAlpha = RippleAlpha(
329+
pressedAlpha = 0.10f,
330+
focusedAlpha = 0.12f,
331+
draggedAlpha = 0.08f,
332+
hoveredAlpha = 0.04f,
333+
),
334+
)
332335

333336
@Preview(heightDp = 600)
334337
@Composable

sample/src/main/java/com/kizitonwose/calendar/sample/compose/Example8Page.kt

-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import androidx.compose.foundation.layout.fillMaxHeight
1010
import androidx.compose.foundation.layout.fillMaxSize
1111
import androidx.compose.foundation.layout.fillMaxWidth
1212
import androidx.compose.foundation.layout.padding
13-
import androidx.compose.material3.ExperimentalMaterial3Api
1413
import androidx.compose.material3.LocalContentColor
1514
import androidx.compose.material3.SegmentedButton
1615
import androidx.compose.material3.SegmentedButtonDefaults
@@ -177,7 +176,6 @@ private fun FullScreenCalendar(
177176
}
178177
}
179178

180-
@OptIn(ExperimentalMaterial3Api::class)
181179
@Composable
182180
private fun PageOptions(selectedIndex: Int, onSelect: (Int) -> Unit) {
183181
val options = listOf("Horizontal", "Vertical")

sample/src/main/java/com/kizitonwose/calendar/sample/compose/Utils.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ import androidx.compose.ui.graphics.Color
2626
import androidx.compose.ui.graphics.toArgb
2727
import androidx.compose.ui.platform.LocalContext
2828
import androidx.compose.ui.platform.LocalInspectionMode
29-
import androidx.compose.ui.platform.LocalLifecycleOwner
3029
import androidx.compose.ui.semantics.Role
3130
import androidx.compose.ui.unit.dp
31+
import androidx.lifecycle.compose.LocalLifecycleOwner
3232
import com.kizitonwose.calendar.compose.CalendarLayoutInfo
3333
import com.kizitonwose.calendar.compose.CalendarState
3434
import com.kizitonwose.calendar.compose.weekcalendar.WeekCalendarState

0 commit comments

Comments
 (0)